Video Game Creation for Newbies

Somebody cold-emailed me today asking about how video games are created. I drew the implication that they might want to develop games themselves. Here's what I replied…

Video game construction is a pretty complicated activity in 2006. You'll need to know how to program, obviously; most games are created in a language like C or C++ that can be compiled to fast code, but there are an increasing number of games written in combinations of languages. You'll also need to either have some graphics and sound skills, or enlist friends who do. What you'll need the most of is time and patience.

There are some really good books on the market right now; I'd start by going to your local bookstore and looking through them for one that looks to be at about your level. There are a lot of resources in the open source community for those who want to create games. You might look at generic libraries like SDL, 3D game environments like Crystal Space, or even full-on game creation environments. For example, Google suggested this list of such resources.

If you decide to take classes in Oregon, the Art Institute of Portland has a game development program that is quite high quality. You can contact folks there to find out about it. We also teach some game-related stuff at Portland State, but there's nothing too advanced or coherent. While I can recommend my class on adversary search, I doubt what you want is to write AI for chess-like games. :-)

You need to understand that game programming for a living is an incredibly competitive and difficult job. It can be rewarding, but many folks burn out on it. Make sure it is truly your passion before you start down the professional road.

Besides, the amateurs have the most fun anyway. :-) Good luck in your quest!