Theory

Game Engines


The Range of Engines Available

The game engine is one of the critical pieces of the puzzle. Some engines are better documented than others, some are more powerful, some more flexible, some have better user communities than others. Give the game engine a fair amount of consideration before spending your time and money on it. Do NOT assume anything - there is a fair amount of hype on some of these game engine sites so be careful.


I suggest you visit the website for the game engines you are interested in, read their free tutorials, check out games that were created with the engine, and read the blogs and forums for each engine. Here you can get some of the inside information coming from the users themselves. Also check out http://www.devmaster.net/ for reviews of game engines and ratings. Whenever possible, try out the 30 day trial version of a game engine to see how usable it is and how hard it is to import art assets.

Free Game Engines

Nothing beats free. But what can you get for free? Genesis 3D, Ogre, Irrlicht, NeoEngine, Crystal Space, Quake, and Ultimate 3D are among the more notable names.


Genesis 3D is used as a foundation for The Reality Factory game development environment. You can see a free tutorial for the Reality Factory here.


Ogre is a rendering engine and not a game engine. There is an engine called RealmForge GDK that makes creating games with Ogre as the rendering agent possible, but the physics, ai, and other componets are separate units and thus integrating all can take much time and effort. If you aren't experienced with C++, and willing to hit the slopes of a steep learning curve, leave this option for another time. Check out the Ogre engine here.


Irrlicht is a simpler engine than Ogre. We will try and get a better perspective on the Irrlicht engine at a later date. Check out the Irrlicht engine here.


The Unity game engine, formerly $200, is now free. Doubtless this was done to increase the user-base and recognition of the engine, and thus increase sales to their iPhone and Pro engines. Unity has made major strides in the just 2009. Formerly only available on the Mac platform, it added the Windows platform for development in May 2009. Based on a new-generation drag-and-drop technology, capable of easy art asset imports, Unity also allows streaming over the Web. Find out more about the Unity engine at www.Unity3d.com.


This means, incredibly, that your game can play in a browser. We performed an eval of Unity in June of 2009 and built a complete game in less than 30 days. Learn more about the Unity3D engine at www.Unity3d.com.

Inexpensive Commercial Game Engines

Before we start this section, let us inform those who aren't aware that the serious, world-class game engines used by your favorite game development studio can cost in the hundreds of thousands or millions of dollars. With that perspective, you can appreciate that the solutions we will be talking about can be had for $1200 or less.


GameMaker is the cheapest "nonfree" method of game making, as long as you're not hoping for something very complex. GameMaker pro costs $20. Click here to go to the GameMaker page at YoYo games.


The Unity Pro engine costs $1500 and includes features you don't get with the free version, such as automatic shadows. Probably the most notable thing about both the free and pro versions are the super-slick, drag-and-drop interface. Unity is, for the most part, just plain fun to work with because of this interface. It should also be mentioned here that Unity has an iPhone game engine as well, that goes for $400 for the regular version, and $1500 for the pro version. Learn more about the Unity engines at www.Unity3d.com.


Another engine to check out is the C4 engine. The last time we checked the C4 engine was $350 for a lifetime license which includes upgrades. Not too much to say about C4 at this time except that it gets strong reviews and has a loyal following. At last check, the C4 engine did not have on-board physics but that is in the works. According to reviews, the C4 engine gets strong marks for its rendering capabilities, is said to be written in very clean code, and is, for better or for worse, the result of a single, gifted individual.


The Torque game engine went from $100 in the early 2000s to 1300 around 2009 and now back down to $99. It's had a confusing ride for the last few years with several different versions and pricing plans. For the most part things seem to be on track again, with the possible exception of the licensing pricing for "non-games" (see below). The Unity engine for free is hard to argue with; however, Torque is still worth a good look. Check out the Torque TGEA engine and Torque 3D at GarageGames.


Not many people think of Adobe Director as a game engine, but you can create pretty compelling 3d games with it. These games can be made to stream over the web, or play directly off of the users machine. The graphics are decent but not anywhere near what you will get with the Unity3d engine. Games can run on Mac or PC. It currently costs $1000, in the US. Geometry can be imported from 3ds Max among others. Director 11.5 was recently released. Director uses lingo or Javascript for coding, has support for Direct X 9, and can access Flash movies. Click here to read more about Adobe Director 11.


No matter which engine you use, if you are using 3ds Max as your modeling and animation package, and want to learn how to create characters and pickups for your game, take a look at our book on Creating Game Art for 3D Engines.


Want to see some ratings for the various engines listed above (and more)? Go to DevMaster.net for engine comparisons from users.

Warning: Read the Game Engine License Carefully

Want to make a non-game? That is, a simulation, educational game, edutainment, etc? You may be in for a suprise. Think you are qualified to buy the independent version of a game engine? Maybe, maybe not. We give a few examples below as to things to watch out for but don't take it from us, check for yourself - read the license agreement and ask if you're not sure, before you spend your dollars.


The Unity license basically states that you can develop on the independent developer version (free as of this writing) as long as your company did not gross more than $100,000 in the past year. If your company is doing well enough to make $100,000, you must develop on the professional version, which costs $1,499. There are no restrictions if you want to use Unity to make a non-game, ie, you have no extra fees or version stipulations.


With the Torque engines, you will need to pay $300-1200 license fee if you want the ability to make a non-game. This could be important to know before you jump in. We are not sure about the other engines at this moment, but remember it is your responsibility to read the license and ask if you don't know.

Want to get into the industry?

Just as in our section on game art I thought it only right to mention that, if you are planning on a career in game development, you will ideally want to have some experience on the same engines the studios you hope to work for are using - if possible. Cost could be prohibitive, but be smart and do the legwork, find out whos using what and let that be a factor in your decision.

Compatibility with your OS and Modeling / Animation software

This may sound obvious, but reading the forums for different game engines make it clear that developers are often unpleasantly surprised by compatibility issues. Make sure everything is compatible. Up until spring of 2009, you could only develop with the Unity engine on a Mac platform. Now Unity is available for development on a PC, which really changed the landscape of the game development world, at least for independent gamers. Consider also the modeling and animation software - make sure the game engine supports your package or choice; if they are not compatible, you'll either need to choose some other modeling and animation software, or you'll have to pick another game engine.

Exporters and Converters

You've got to test out the exporters that will take the models and animations from your software into the game engine. This is never an easy task; it involves doing some reading. The Unity3D engine natively supports many formats including Cinema 4D and Maya, and supports all the others via FBX export. To use FBX, you need to visit the download site for your software (for example, if you are running 3ds Max, go to Autodesk.com and download the latest FBX exporter for your version of Max.) The Torque engine uses a DTS exporter that you can get from their website.


You need to understand what kind of hierarchical links need to exist between different art assets; you also need to understand how to install and access the exporter (usually these are loaded into the menu system of your modeling/animation software).


When you work with the Torque game engine, you will, for example, want a bounding box to be linked to your models so that they can collide with other things in the game. Even your character will have a bounding box that is placed over the character and linked to it. When your character bumps into an object in the game, it's really your bounding box that is bumping into another object's bounding box. The image below illustrates this concept. Here you can see the bounds box positioned around the character. In this case the character has no mesh, since we are at this point at the animation stage of the game, and the mesh has already been established.


What are all the other boxes around the character? These are helpers - depending on your software, they may be called other things - dummy objects, perhaps - but what they do is give the engine you are using, a way to hook to your game art. For example, the green box near the character's right hand is a weapon's mount. The box near the character's eye is for the eye mount. The box behind the character is the camera mount. More figures on bounds boxes as well as a figure on the hierarchical links between game art objects can be found here.

Study the Engine's User Community

You don't want to take on the task of making a 3d video game on your own. You are going to need help. One of the most proven ways of getting answers is by asking others in a community that uses the same engine. Before you commit to an engine, that is, before you actually buy it, check out how strong the user community is, and how much help they seem to give each other. Visit the websites for any given game engine, see what the community is like, before you commit.

Investigate the Engine Manufacturer's Resources

You are also going to need some learning resources - manuals, pdf files, html pages, whatever you can get your hands on that tells you how the engine works and how to make your ideas a reality. Check out the resources available with the game engine you are considering.

Try Before You Buy

If possible, download a trial version of the game engine. If you can get your hands on a 30-day trial copy of the game engine, you owe it to yourself to clear some time and try before you buy. Attempt to bring your game art in, in fact do some prototyping if you can, so you learn just how much of your game vision is going to be possible with the prospective engine. It definitely helps to have a clear view of what it is you want to do before you jump in, and then it is also helpful to have a clear schedule so you can really give the engine a fair look during those 30 days.


If there is no 30-day trial copy of the engine available, then you need to be extra-cautious before you buy. To "buy a pig in a poke" is a colloquial English expression for making a risky purchase without inspecting the object beforehand. Don't do it unless you've got the money to burn, or you have spent many objective hours on the forums and blogs for that engine and you feel strongly this engine has a good chance of working for your project. You can't always trust the marketing, but you can usually somewhat trust what the real users are saying, though they have their biases as well.

Creating Game Art book ad