May 24, 2012
So in an attempt to stir up some ideas for a new project, I’ve done some research into various game engines. I’d like to create a small project in a few different products and see if there’s one that speaks to me more than others. As for what engines I’ll be using, there’s really only three criteria they need to meet:
- Mac-compatible – I’m just not giving up my Mac, simple as that…
- Free (or inexpensive) – At least for non-commercial purposes. Takes the edge off trying new things if there’s no fear in wasting money.
- Active community – The more active the community, the more likely the engine will continue to be supported and grow with new features. Makes it easier to track down tutorials and sample code as well.
Of course, cross-platform publishing (Mac/PC/mobile) would be nice to have, but it’s by no means a deal breaker. So far, I’ve narrowed it down to three possible choices:
Unity - Popular cross-platform 2d/3d game engine. Free for indie developers on Mac & PC, and although the iOS license traditionally costs extra, I managed to grab one when they were giving them away a while ago. The complexity is the one big negative here, but I guess learning is my goal. This one is very promising.
Flixel - Not only free, but open-source, Flixel is a 2d ActionScript game library. It doesn’t feature the visual editor that Unity has, but being 2d only, it’s far less complex. More suited for smaller retro-style browser-based games. Looks fun to play with and quick to prototype in. Flash-based means getting it onto an iOS device is a bit of a pain, but it’s possible.
Torque 2D – About 7 years ago, I got on the Alpha program for this engine. It was fun to play with and my first real experience with game programming. GarageGames went through some rough patches, and support for the engine dropped to zero, but they seem to bouncing back a bit now. Found out my license was still good for the engine too, so I may have to take another look at.
There are more engines and libraries out there, but for various reasons they didn’t make the cut. Some that stand out:
Unreal Development Kit - This one is pretty amazing, though complex. Biggest drawback is that the editor is PC only (boo).
Cocos2d – Another great library (that I’ve mentioned before) but I’m already quite familiar with it. I’m really more interested in learning something new. There’s also an spinoff project called Cocos3d, but it’s not quite as mature as the other products in this list – yet. Could be promising in the future if it maintains the intuitive quality of Cocos2d.
Torque 3d – There’s nothing wrong with this engine, but Unity just looks more appealing (and free) to me.
GameSalad – A 2d engine that seems to be based on more of a visual, logic-block style of programming. I prefer typing my code – just makes more sense to me. Might be good for someone starting out, though.
I think I’ll probably poke around in Unity a bit first – see if I’m able to get anywhere with it. 3d games are inherently more complex than 2d games – it’s a whole other dimension, after all – and asset creation will be a bigger process than with 2d games. I’m somewhat familiar with Blender, though, which apparently plays nicely with Unity – here’s hoping…