So you want to be a game developer?

I get a lot of people asking me, how do you become a game developer?  Where should I get started?  So, I’ve come up with a short list of resources to get you going.

Learning

  1. CodeAcademy.com This is a free resource with bite (no pun intended!) size assignments that are easy to digest and will  introduce you to coding.  I got started by learning Javascript.  While this isn’t a super commonly used language in gaming (like C++ or C#) it still will teach you the basic concepts that all languages use.  If you want to learn C++ or languages that aren’t taught on CodeAcademy, try Lynda.com or Microsoft Virtual Academy.
  2. Handmade Hero This is a video series that walks through every step of making a game.  This shows a complete game and engine coded live, from scratch.
  3. Gnomon Workshop This is a repository of very high caliber instructional art videos.  It covers an incredibly comprehensive range of topics.  Not free.

Specialization

Most games are made by teams, and the key roles include software engineer, sound-person, and artist.  You should start thinking about which of these excites you most and start pushing yourself in that direction.  While indie game developers often wrangle multiple (or all) roles here, most industry jobs require deep knowledge in one of these tracks.  For people getting started, I recommend seeking a first job at a large company because there are more opportunities for mentorship and more resources when you get stuck.  Most small companies can’t afford to risk hiring a noob anyway.  If you pick a specialized role now and consistently let people know the direction you’re working in, they’ll remember you when a job opens up.  Even if you’re interested in all three disciplines, you should not mention that when interviewing for a specialized job.  In my experience, that only hurts your chances.  I got my foot in the door as a tester, and you can, too.  I don’t recommend this because you’ll waste your time.  If you can get a job in a more specialized discipline in the industry, shoot for that.  Testing is a last resort.

Here are some big companies you can get started with.  Check out the game companies in your area.  If you’re a student, check internship opportunities.  Don’t expect to be trained on the job.  This might happen a bit, but it’s not the norm.  People in the game industry are responsible for taking initiative to proactively build their own skill set.

  1. Careers.EA.com
  2. Zynga.com/careers
  3. Activision.com/careers

Game Jams

The best way to get a job making games is by making games.  You can start entering game jams.  I find the best way to learn is not necessarily by doing dry exercises, but by having a creative goal and a motivation to learn a new concept to solve a problem, such as figuring out how to add a feature to a game.

  1. Ludum Dare is a regularly held 48 hour game jam.  There’s a great review process which means other people will actually play your game when you’re done.  A lot!  You can join the #LudumDare channel on IRC to ask questions or meet team members, although most people work with friends.
  2. Global Game Jam is an annual game jam.  Often times colleges participate, and even welcome participants of all ages who don’t necessarily attend those schools.  I’m pretty sure UC Santa Cruz and CSU Eastbay both do this.  Check with your local colleges to find out.
  3. ICFP is a 72 hour competition focused around functional programming but welcome to programmers of all languages.

Programs

These are the critical programs I generally have installed on my dev computers.

  1. Photoshop – This is my primary tool for making 2D art. Gimp is a free alternative.
  2. Maya – This is my primary tool for making 3D art.  Blender is a free alternative.
  3. Visual Studio – This is my primary text editor for writing code.  It’s available for free.  You want to look for the ‘Community’ version of it for free.  There are different versions of this application depending on what language you’re using.  I have VS Express for Web, Microsoft Visual C# Express, and Microsoft Visual C++ Express Edition installed.
  4. Tortoise SVN – This a version control client.  Free!

Additionally, I use these to help my development along.

  1. Fraps – Free screenshot tool.  Helps with bug tracking.
  2. Slack – A great tool to chat with team members.  Free.
  3. Open Broadcast Software (OBS) – Video record dev, make speed paintings, broadcast dev live to Twitch.  Build your community and share what you’re doing.  Free.

Web Applications.  You may not need these, but I like em.

  1. FogBugz – Bug tracking.  There’s a free version.  If they lock you out and want you to pay, call customer support and have them restore your free version.  This happens once.
  2. WordPress – Set up a basic development blog.  Here’s mine.  Tumblr is a free alternative.
  3. HostGator – Host your website.  There are a zillion hosting sites.  I’m getting on a web tangent here, but it’s important to have a site to record your accomplishments and let people know about your games.

 

Hardware

Cintiq If you’re an artist, I really, really, really recommend investing in a Cintiq.  This is a monitor that you can draw on.  It’s pricey (~$1,800), but it’s the best tool for artists making digital art IMO.  If you’re a student, I would suggest you ask your school computer lab to apply for a grant to get one of these.

Play Games

Lastly, to make games, you have to play games!  Your assignment is to play a new game at least once a week.  Check out IndieDB and Tigsource to get started.  I like to play a lot of boardgames, too, because you can spend time discussing the mechanics with your friends between turns.

Good luck!

Free VR Business Card Template

CHpGi1gW8AAlNIyMake your own VR business cards using our template!  Just replace our info and screenshots with your own.

Everyone asks how we made VR cards with lenses built in to simulate the typical VR distortion mesh, so I’m posting our template for you to use, too!  These are great to get people to remember that you’re a VR developer.

Download the PSD templates here.

I used Morning Print to have these made up.

Enjoy!

Innovative VR Ideas in Bazaar

We just completed our project for the Oculus Mobile VR Jam. Woot!

Bazaar’s trailer is posted on the contest website. Anyone lucky enough to have access to a Gear VR can download Bazaar and try it out.

Half the score is based on “innovation,” so we spent a significant amount of time considering ways to make our game innovative. We decided to go with a 100% gaze controlled game. Here are 5 things we learned.

  1. Speed

Moving around in VR games can easily cause motion sickness. Many games overcome this by simply keeping players in one place. Bazaar uses a related technique – players go really, really, slowly. We designed the game around this limitation — by creating a collecting game, players didn’t notice how slowly they were actually moving.

Despite moving slowly, we wanted players to occasionally progress quickly to their next objective. Through play tests, we found that if players were looking exactly forward, they could move more quickly without getting motion sick. Even looking a few degrees away from exactly forward was uncomfortable, though. Because of this, we used techniques to keep the player’s gaze directly forward.

We introduced a target gaze ring (shown below), which appears when the cursor gets near.

CarpetFast1.png

A number of effects pulling the player’s gaze to the center get stronger as the cursor nears that point:

CarpetFast2.png

The result? We found the carpet could go 10 times faster without players complaining of discomfort after employing these techniques.

  1. Nod to Continue

The second area we focused on was how players could make choices within the Gear VR without touching a button.

In the game, players get collection quests from scrolls. To collect the scroll, you gaze at it, and the scroll takes over your screen (shown below). But when the scroll takes over the whole screen – how does a player dismiss it?

We decided players could indicate they were done with the scroll by using a nod gesture. We felt that was more natural than “gaze-and-hold” on a button which can disrupt the players sense of being in the virtual world.

NodToContinue.png

  1. Looking Up

How do you encourage people to look around at the beautiful world, but also encourage them to look in particular places to keep the game progressing?

In Bazaar, when a player completes a collection quest, they are rewarded with a constellation appearing in the sky. Our early playtesters rarely looked up at the sky and so didn’t notice their reward.

To overcome this, we did several things. A surprisingly effective technique was to stop the carpet. This, by itself, always made players start looking around. They wanted to know why they stopped.

Next, when the carpet stopped, we put a huge glowing star on the front of the carpet. This glowing star was the indication the player had received a new constellation. The star also had pulsing 3D sound which helped players find it.

star1.png

To make the game progress, players had to follow the star as it went up to the sky.

star2.png

Now players are looking at the sky and can see their new constellation.

star3.png

  1. Magic Scope

What could we add to make a novel collecting game in VR? The magic scope was our answer. The scope enables players to see through glass so they can collect hidden items.

scope.png

When you’re in scope mode, the left eye is blacked out and the right eye feels like looking through a scope (shown below). Players mentioned they instinctively closed their left eye when they used the scope in the game — since that’s what they would do in real life with this object. This creates a fun, new experience for people — to be using an item like you would in real life, but simulated with a VR headset.

While this effect is interesting, the scope caused some feelings of claustrophobia. Consequently, we limited the collecting games that took place in this mode to 15 seconds.

  1. Turning

Lastly, in a 100% gaze controlled game, turning was a challenge. As a player nears a corner, we needed the player to realize that gazing a direction was a choice to go that direction. The biggest indication was a turn arrow that appeared, though we also made the carpet lean into the turn, and played a sound. If the player failed to make a choice they crashed and lost health. All these techniques encouraged players to look forward into turns.

It was successful – play testers didn’t complain about motion sickness, though we did get feedback on how to make this technique happen sooner and smoother.

turning.png

Conclusion

Developing a 100% gaze controlled game gave us an opportunity to develop techniques that felt natural to the VR world. There is still so much to learn about VR interfaces — hopefully, sharing some of the things we learned developing Bazaar will help others make their VR games.

 

Article by Tod Semple, featured on Gamasutra here.