Designing and implementing a game is no easy task.  On top of the desire to formulate the best ideas for gameplay and storyline, there’s a technical element that is just as difficult to nail down.  Countless indie developers conceive of  a great idea but ultimately flounder and lose direction as their brainchild becomes bloated and unmanageable.

It has been a tough struggle for small scale games to be able to break out of the realm of Flash and make the jump to a full desktop application.  The reasons for this are twofold, manpower and technical tools.  Let me qualify this seemingly short sighted statement with the assertion that games are downright hard to make.  It would follow that so much work divided over a number of people makes the task easier, but what are these folks doing once they’re all in on the plan?  Well, let’s look at the setup of how a game studio works, you’ve got digital content creators (modelers, animators, environmental designers), artists (menus, 2d assets, etc), programmers (insert code here), writers, and producers.  Phew, that’s a lot of stuff.

Now the trick is to make it all come together somewhere along the pipeline in the chosen game engine.  The choice of a game engine is one that can’t be taken lightly, and as almost anyone who has simply picked the first will tell you, you will go back and rethink your decision.  For years, indie developers have been pretty limited in their choices of engine.  The big commercial engines traditionally cost big commercial bucks while the more affordable engines targeted at smaller developers give little hope of competing with any reasonably sized releases.

Using something like Torque could give decent results, but any product it produces still has that small scale taste.  One of the inherent weaknesses of this particular platform is the content pipeline.  Going from Maya or 3DS to Torque was not a pleasant experience.  If you wanted animation, that was another can of worms which had to be opened (and was still never easy enough to get down to a muscle memory).  While cheap and Mac/Windows compatible, Torque is a hard sell considering what else is out there.

Now consider Unity, an engine that has come much into the forefront in the past few years based on a few interesting paradigms.  First, its deployable to damn near any platform (including cross-platform web browsers) and the developers seem intent on keeping up with the newest stuff that can run anything with 3D graphics.  Second, its probably the first game engine to have started out as a Mac-only development toolkit.  While it was able to be played anywhere, it was only able to be developed on OS X until recently.  Also earth-shattering was the announcement this October that the indie version would now be offered free.  Fiscally speaking, saving $200 over the previous price of the package is not a huge deal, but it does take out the price factor completely.  We’re all well aware that people pirate $9 software titles just because they can, so I consider a free offering of this caliber to be quite significant.  What’s more interesting to serious indie developers is likely to be the relatively loose license that Unity allows for the indie version.

Of course, the elephant in the room is Unreal Engine 3, who’s release as a free development kit has been a hot topic for a few weeks now.  While still a great engine, UE3 is starting to show its age when compared to the kind of work that Crytek is producing (regardless of how much we all hated the original Crysis for everything it was/wasn’t) with their own engine.  Unreal is exposing a real commercial powerhouse to everyone who wants to try it, which is great.  It allows content creators to see what their assets look like in game as well as giving aspiring game designers invaluable experience on one of the most sought-after platforms.  One important thing to note, however, is that Epic has you on the hook for some considerable cash depending on what you do with the game you or your company creates.

While all of these steps towards the empowerment of indie developers is valuable, it is important to step back and take a look at the truly free options available.  Before the incrementally free (though still costly), there was the totally open source.  Engines like jMonkeyEngine, Delta3D, and Panda3D have found limited success in certain niche areas, but have never quite taken off like their commercial cousins.  With such open platforms are available, why is the popularity still limited?

Drawing from my intimate knowledge of jMonkey and the wealth of users that make up its community, there are shortcomings for the project that I love so dearly.  The most common gripe that we come across in the forums and chat channel is the lack of a world editor.  For obvious reasons, this is a major feature that game houses, for good reason, find attractive.  Put simply, its hard to layout a scene in jME.  Mainly procedural work, like Betaville, don’t quite call for placing objects in the scene and setting up lighting in such an intimate nature, but it is an absolute necessity when creating a first person shooter or RPG.  Somehow, though, games get released, and those who have weathered the trenches of jME are in a good position to help the newcomers.  For some reason, this is an easier task for open-source projects rather than big commercial packages.  The community contributions and support at jME are impressive and humbling every day.  Still though, for all the excited newcomers, many are forced to jump ship when they realize the difficulties of piecing together a world line by line.

Some likely go on to explore the Delta3D engine as it’s STAGE editor is certainly an appetizing offering.  Unfortunately, however, little in the way of support can be found on the lightly used forum.  They’re also going through their own growing pains about how to expand the project to be more self-sufficient as far as prolonged development goes.  See here for an interesting read on that particular topic.

So, the debate between engines really boils down to two big factors, money and usability.  Although games like Grappling Hook and Mad Skills Motocross have been able to sneak through the shortcomings of open-source and see the light of day,  they are exceptions to the rule and the vast majority of released games continue to be developed in commercial engines.  It is clearly worth the price to many companies who need to answer to investors or are on rushed time frames, but how far can open source be pushed?  Can the right people at the right time make the right nuclear mixture to have gaming explode with open engines?  It hasn’t happened yet, but nothing says it can’t either.  Some will stay while others decide to move on to other engines that are available.  Personally, I’m firmly planted in open source for now and can’t wait to see where it takes gaming.