A "game engine" is defined as a framework which incorporates more than one of a number of facilities that are of importance to game development, including graphics, I/O, networking, file system, physics, GUI and scripting.

A "complete game solution" denotes a system integrating at least graphics, physics, input, gui, network and scripting; that is, the major requirements of most (Indie) games.

A full game engine will expose an API and provide the option of full programmatic control. Therefore solutions made explicitly for non-programmers, such as Rad3D, are left out.

Note that this is a survey of the systems from reading their web pages, licence details, forums and API documentations only, and the evaluator hasn't necessarily sat down and programmed using every solution below. However, since "ease of development" or "programming comfortability" are tremendously important aspects and should be taken into consideration but also are somewhat subjective just as needs differ, please look into this yourself when deciding on what is the right system for you.

Restricted source access even for pro licence.Non-standard scripting languge (Esenthel Script).Licence is per-product, which is an issue when making many smaller products.There is only one developer!Sub-standard (non-existing?) API documentation.

Unclear, plans from forum post:"An indie/hobbyist license (~150€) with optional access to the C++ SDK. Will allow publish on all supported platforms for all major desktops (Windows, OSX and Linux).A pro license (~<500€) that will publish to all supported platforms to come (iPhone/iPad/Android).A source license, is meant to be used by companies with programming staff so that they can expand, modify and eventually share back improvements or bug fixes with the core distribution.An additional license for big players that will need to be discussed on a case per case basis.Upgrades will be available for a fraction of the full license cost. 2D support (currently deactivated) will not be a major upgrade.you are not planning on doing commercial work: go ahead and use it as you please."

• Under development.• Inadequate documentation.• No individual or central web presence.• No integrated networking.• No integrated input?• Licence consequences due to GNU?

Rejected systems:* Construct Classic: unrealistic legacy system only for DX9* Yake: complete system, but apparently dead (last commit March 2010, vandalised front page.)* The Monocle Engine: cross-platform system for 2D graphics, but not a game engine as by the definition above.

« Last Edit: December 15, 2011, 06:25:46 am by Mikademus »

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies

Unity is a complete game solution. However, features important featureas are cut from the free licence and both Android and iOS publishing costs extra. Developing for desktop/Android/iOS adds up to $4500 using the Pro version or $800 for the "free" version. Linux not supported (neither Editor nor Web Plugin) so developers intending to make browser games should be aware that Unity games will not be playable on a significant minority portion of the potential market. Unity is reported to be problematic to work with if you try to do something outside what it is intended for.

Marmalade is expensive, especially since it charges "per seat per year", but because of its extreme width of supported handheld platforms seems like an superior system for development for mobile systems.

Shiva3D is affordable and supports an impressive array of platforms, even if the support for mobile platforms through "AirPlay SDK" is very questionable since AirPlay doesn't exist any more having changed into Marmalade, with different licences than the original AirPlay.

Torque 2D and 3D are competent and affordable with a single "pro" licence option for $99 with full source access. It has a wide array of tools and an impressive number of projects developed using it. The drawbacks are that 2D and 3D are separate licenses and the extensive suite of tools, editors and kits will cost through your teeth with an additional download ranging from $9--$299.

C4 Engine is mature and capable but with quite limited platform support (in practice only Win/OSX, PS3 being a "special licence") and seems to implement its own solutions for game engine facilities. Licence fees are commerical mid-range with per-person fees of $350 for the "normal" and $1200 for the "pro" version. The $100 "basic" version does not allow commercial development, boo!

NeoAxis has attractive pricing, but is crippled for Indie licences. Nonetheless, the commercial licence also is not too expensive. That development is limited to Windows is a definite but surmountable disadvantage.

U3/UDK seems very focused on high-end AAA Windows games, and for that reason, and for the hefty licence requiring 25% of all revenue exceeding $50 000, I can't recomment it for Indie purposes.

Game Start 3D strikes me as utterly unrealistic even unto the absurd, especially with the belief that big players will BUY a source licence AND thereafter share back their code upstream! This reeks of uncertainty and future failure, and I instinctively want to stay very far away from it.

Evaluation of open-source solutions:

Panda3D is the most mature and feature-complete. With Disney and Carnegie-Mellon University backing it with several full-time developers it is a solid and well-maintained system with all features needed for Indie titles, except for support for handhelp platforms.

Maratis features close Blender integration and a very capable editor and should be worth serious consideration. Its only real drawback is lacking integrated networking.

Delta3D integrates mature open-source frameworks for all needs behind a unified interface, especially OSG (Open Scene Graph), which is a very competent scene graphed renderer with the widest range of supported platforms of all open-sourced rendering systems. Delta3D seems highly portable and should be checked out when testing FOSS game engines.

Polycode has a good feature set and a seemingly good and approachable API. It is still relatively young and lacking the feature sets of Panda3D and Maratis, but is constantly developing and will as of now cover the needs of most indie games.

Crystal Space 3D is a 3D scene graphed renderer that with the addition of CEL (Crystal Entity Layer) has stepped up to become an almost complete game solution. CEL is still under development but is feature-complete enough for games development. However, it does not as of yet integrate networking.

With being integrated in Blender the Blender Game Engine will become an excellent development plaform, though it is still immature.

Conclusions:Judging from the criteria of feature-completeness, maturity and maintenence, prospects for longevity, power and programmability, and price, the framework I see from this survey as the best for Indie purposes and wallets would have to be Panda3D. Panda3D is a complete game engine, is open-source, powerful, competent, have great documentation and community, easy to use, and have commercial and academic backing (Disney and Carnegie-Mellon) allowing full-time developers and lacks only handheld and tablet publishing. If a visual editor is important then I believe I would recommend Marantis, and if programmatic control of the game is paramount, then I would recomment either Delta3D or Polycode, where Delta3D is more mature and with wider range of supported platforms.

For indies with commercially compatible wallets:

For purely mobile platforms Marmalade is definitely the best option simply because of the wide array of different systems and potential customers reached.

Shiva3D would be the second option because of width of target platforms coupled with being affordable and very competent.

Unity can publish to iOS and Android, but for a high and cumulative price. The special licences and lack of native access to the API suggests an inferior alternative to Shiva3D.

If thousands of dollars is too expensive and developing on Windows is not an obstacle then NeoAxis seems very competent and probably in most ways equal to Unity, Torque and C4.

UDK I will not recommend since UDK has an enslaving licence given success.

« Last Edit: December 15, 2011, 06:11:22 am by Mikademus »

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies

Well, then I guess I would have to pay for projects that go commercial? I like to stay with open source solutions as far as possible, and I like to have access to the source, in case I need it.

Anyone who would like to advertise their favourite open source game engines? Are there even any maintained, good ones?

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies

Well, then I guess I would have to pay for projects that go commercial? I like to stay with open source solutions as far as possible, and I like to have access to the source, in case I need it.

Unity is free for commercial projects on Windows, OSX, and the web. You have to pay money for a licence in order to get the full-featured version of the engine, and to publish games on the iOS. I think there might be a revenue cap in their licencing as well, but its so high that buying a commercial licence at that point is a drop in the bucket. As long as you're not terribly concerned with iOS, Unity is a viable option.

I can understand your desire for an open-source engine. But at the same time, fully open source projects often negate the benefit of using a pre-built engine. If you really want to get away from enginitis, an option like Unity is probably best. (so you won't be tempted to dive into altering the engine)

As far as open-source goes, Irrlicht is an open-source engine that I used to play around with. Maratis is also an up-and-coming game engine that might be worth a look.

@mcc: good question! I guess ideally (unrealistic wishlist follows) a system that provides 3D graphics, physics integration, prepared for TCP/UDP C/S networking, object pool memory management, input device management, and file system abstraction and data management with platform detection and automatic endian conversion. And that usually means full-scale commercial engines More realistically, a solid and well-maintained system with a decent coding standard that have already integrated a few libraries (say, 3D, physics, memory pooling and input) into a coherent system.

@Richard Kain: Hmm, I see. Ok ok, I will take a look at it then since everyone and their pet gerbils praise it so much I thought that they charged for any commercial release, but if the revenue ceiling is high enough, as you say, it might be very well suited for my needs, and it does have a large community so it should be relatively easy to get help, if needed.

Btw, I used Irrlicht a couple of years back, but isn't it only a 3D rendering system integrated with an input library, as opposed to a game engine, though? Of course the definition of "game engine" is very vague and subjective, so if generously inclusive I guess it (and OGRE, and some others too) might be "game engines".

On that note, Maratis seems pretty darn slick! Definitely going to check that baby out! Thanks, it might be just what the doctor ordered!

@Yayo: Same question here as to RIchard, isn't Panda3D more a render system than a more feature-complete/systems-integrated/your-definition-here game engine?

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies

@Yayo: Same question here as to RIchard, isn't Panda3D more a render system than a more feature-complete/systems-integrated/your-definition-here game engine?

No, they provide a lot of tools. They provide their render system, but they also provide other stuff like network, GUI, AI, scripting, physics, ... Moreover they integrate third-party libraries to give you a full game engine and alternative choices (audio, physics, GUI, ...). And they provide other tools that you would like to want from an engine (like debugging tools, profiling, deployment tools, ...).

but isn't it only a 3D rendering system integrated with an input library, as opposed to a game engine, though? Of course the definition of "game engine" is very vague and subjective, so if generously inclusive I guess it (and OGRE, and some others too) might be "game engines".

Yes, Irrlicht is a bit more focused on rendering, and isn't nearly as feature-complete as many "engines." It might be more accurate to call it a framework or library.

Quote

isn't Panda3D more a render system than a more feature-complete/systems-integrated/your-definition-here game engine?

Panda3D probably leans more heavily toward "engine" status than libraries like Irrlicht or Ogre. If I recall, it more completely encompasses the features you would expect from a full-fledged engine. I don't believe it has a visual editor, but then I don't believe all engines need a visual editor.

I am the developer of Polycode, the engine that mcc mentioned earlier in the thread. It's striving to have all of the features that you've listed (though it's not quite there yet). It already has many of the features you want, including physics integration and the upcoming release will include UDP-based networking. Check it out

I don't believe it has a visual editor, but then I don't believe all engines need a visual editor.

I agree, some kind of games don't need an editor. Panda3D has not an official editor, but there are some unofficial ones. Moreover, you could use Blender as an editor; you could easily import levels and logic (using the logic fields) into Panda.

Thanks everyone who has replied with suggestions and help! I have now looked over all your suggestions and I will summarise my findings here. Note that this is a survey of the systems from reading their web pages, licence details, forums and API documentations only. I have not yet downloaded and actually tried creating or programming with any of these yet, and since I consider "ease of development"/"programming comfortability" to be tremendously important aspects I will have to complete this overview with my impressions on actually making something using the systems, later.

Also note that I am evaluating "programmers' solutions", by that I mean I will not look at solutions such as Rad3D, which are explicitly made for non-programmers. I have a deep techie side to my personality and at least want the option of full programmatic control over the engine.

With the phrase "complete game solution" I use below I mean as a system integrating at least graphics, physics, input, gui, network and scripting as well as at least complete desktop (win/osx/lin) coverage; that is, the major components and platforms of most (Indie) games.

Unclear, plans from forum post:"An indie/hobbyist license (~150€) with optional access to the C++ SDK. Will allow publish on all supported platforms for all major desktops (Windows, OSX and Linux).A pro license (~<500€) that will publish to all supported platforms to come (iPhone/iPad/Android).A source license, is meant to be used by companies with programming staff so that they can expand, modify and eventually share back improvements or bug fixes with the core distribution.An additional license for big players that will need to be discussed on a case per case basis.Upgrades will be available for a fraction of the full license cost. 2D support (currently deactivated) will not be a major upgrade.you are not planning on doing commercial work: go ahead and use it as you please."

Currently Windows only?

Full focus on visual editing (editor-based), coding through scripts only.

-?-

* Currently in beta, feature-incomplete, scripts can't access entire engine.* Missing scripting features (f.i. networking and pathfinding) "will be addressed through a source licence".* Big plans and hubris talk from single developer but little actual walk (high planned fees, belief that "big players" will buy AND share code back, plans to publish on all platforms but currently only windows?)* Unclear licence: might spring fees or restrictions on you later? * Non-standard scripting language, "Squirrel" & "ACE".

Open-Source solutions. All of these share the advantage of being free with full source access:

I also looked into Construct Classic, but rejected it as realistic since it is a legacy system only targeted for DX9, and also Yake, which is a complete system, but apparently dead for all accounts.

Nonetheless, of the commercial systems Unity3D offers a complete solution for desktop platforms. However, some features cut from the free licence are quite important, and both Android and iOS publishing costs extra. In all, the cost to develop for desktop/Android/iOS adds up to $4500 using the Pro version or $800 for the "free" version.

NeoAxis has attractive pricing, but is crippled for Indie licences. Nonetheless, the commercial licence also is not too expensive. That development is limited to Windows is a definite but surmountable disadvantage.

Game Start 3D strikes me as utterly unrealistic even unto the absurd, especially with the belief that big players will BUY a source licence AND thereafter share back their code upstream! This reeks of uncertainty and future failure, and I instinctively want to stay very far away from it.

All three of the open source solutions (Panda3D, Maratis and Polycode) strike me as capable. Panda3D is the most mature and feature-complete, but Maratis surprised me with its capabilities, close Blender integration, and very capable editor! And Polycode is coming along leaps and bounds, with a good feature set and what appears to be a good and approachable API.

Conclusions:Judging from the criteria of feature-completeness, maturity and maintenence, prospects for longevity, power and programmability, and price, the framework I see from this survey as the best for Indie purposes and wallets would have to be Panda3D. Panda3D has everything needed for game development, and lacks only handheld and tablet publishing. For bang-for-the-bucks I would also like to add that if a visual editor is important then I believe I would recommend Marantis, and if programmatic control of the game is paramount, then I would recomment Polycode.

For indies with commercially compatible wallets Unity at least HAS the options of publishing to iOS and Android, and even Wii, but probably for prohibitive fees. If (1) thousands of dollars is to expensive, (2) handhelds are not essential, and (3) developing on Windows is not an obstacle, then NeoAxis seems extremely competent and probably in most ways equal to Unity. Game Core I will not recommend since it seems to only support Windows.

But my overall recommendation is Panda3D.

Please feel free to bash or correct me, as I said, this is a survey rather than a in-depth comparison!

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies

Polycode works fine on Linux, I've used the Linux target. However you may have to compile stuff yourself to make the Linux version work atm. ... What about Monocle?

Thanks, I will look into them and add them to the comparison! Mcc, I took my information about Polycode from the web page, but if you say it can be compiled on Linux I will update the table in the first post with that.

Since the thread is now more about comparing game engines that are realistic to Indies I copied the comparison the first post and renamed the thread.

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies

The Monocle site contains no info whatsoever about docs/API, scripting, supported platforms, capabilities, or integrated components/libraries.

It also seems to be a 2D-only engine--which in no way excludes it--but I have the feeling should probably get a special section in the list.

[Edit]

The Monocle Engine seems not to be a game engine but a framework for cross-platform 2D graphics, so it seems it does not quality to be part of the comparison.

« Last Edit: September 06, 2011, 01:14:29 pm by Mikademus »

Logged

\\\"There\\\'s a tendency among the press to attribute the creation of a game to a single person,\\\" says Warren Spector, creator of Thief and Deus Ex. --IGN<br />My compilation of game engines for indies