Friday, March 30, 2012

Where to start.

Begin Your own.
Hi, I'm Alan Schmidt, director of Re-Logic games. I've had 15 years experience in the game industry and lead various workshops across the US and Europe in game development. Now.


Cut the Crap


I guess your here because you want to develop games, but don't know where to start. Well, here it is.
For ANY type of game your making.

  1. Learn a suitable programming language. (Eg: C++, C#, Java, BlitzBasic, ActionScript 3.0)
  2. Learn game design techniques. (Game Design Foundations: Roger E. Pedersen)
  3. Develop your game.
This is the most straightforward way I can say it. Of course its a lot more complicated, and I will get to that now.


You have a few options depending on what extent you will go to. In order of how close it is with  game industry standards.

The path you take is defined by your chosen programming language. You MUST learn that and then progress to additional learning specifics to game development, such as a 3D game API, which allows games to use your graphics card.
Programming Language Essential 3D Game Development   Pros                                  Cons
C++ (Game Industry Standard) DirectX (Game Industry Standard)  OR
OpenGL 4.0
Game Industry Standard.
Ensures the fastest and
professional game.
Takes years to learn.
Makes game development
impossible without a team.
C# XNA 4.0 Easy to learn
Mimics professional
C++ standards.
Slower than C++
Java Java 3D API Web Games! (for MMOs)
Multi-platform.
Significantly slower than
Desktop Development
Flash Stage 3DWeb Games again.
Multi-platform.
Similar speed to Java apps.
BlitzBasic/DarkBasic
Integrated
Super Easy.
A bit slower than C#
development.
You're pretty bad if you do this.
I definitely haven't named the all of the paths, but more like the most popular. C++, DirectX/OpenGL is all of the games in the news: Call of Duty, Battlefield 3, most 3D games, either that or its C# and XNA. Java and Flash games are things like Runescape, Bloons TD and other web apps. Anything below those, people such as your boss, will start thinking you're pretty noob.

I personally recommend beginning BlitzBasic or Flash, because you will be kicking off with game development, instead of being frustrated with the difficulty of C++. Then, after you made a few games already, tackle C++ and one of its 3D APIs.