Open Source vs Affordable Indie 3D Game Engines?
TBBScorpion asks: "Lately I have been investigating 3D game engines. I was mostly paying attention to open source engines like Ogre3d, Irrlicht, Crystal Space 3D, and the like. Then I found out about cheap Indie licenses for commercial game engines like Torque Game Engine ($150), Torque Game Engine Advanced ($295) and the C4 Engine ($200 + free upgrades). I found a list of top commercial and open source game engines at devmaster.net in case anyone is interested (I didn't want to take the time to list all the engines, but there are more good ones that I did not list on this page). Now for my questions. Now, here's my dilemma. Which of the engines are worth investing in? Should I buy an indie license or hold out for open source? Or should I start with an indie engine and switch later if open source catches up?"
"Torque Game Engine 1.5 works on Windows, Mac OS X, and Linux but lacks modern shader support (except for something about a free modernization kit). I mostly do cross-platform software development so I like this feature.
However, there is Torque Game Engine Advanced (TGEA) which adds shader support, the Atlas terrain paging feature, and a few other nice features, but since is DirectX9 based it is no longer cross-platform. I have also heard rumors about support for the engine to be a little on the lacking side, yet the Torque community seems to be rather large compared to other commercial engines. Are the complaints just from people who don't really know how to program expecting to be able to edit the C++ of the game engine, or are capable people really having trouble? I've heard rumors about stability of TGEA compared to TGE? For those of you who have used TGE or TGEA, would you recommend it over other engines?
The C4 Engine looks nice as well, but seems to be under active development and less mature, but might it potentially be a more modern game engine? Also, it supports Windows XP and Mac OS X, which is better then just Windows.
Here are the features I am hoping for are: a cross-platform engine, if possible; modern shader support; a built-in terrain paging system; and model, material and animation import from Blender 3d.
When it comes to the open source engines like Ogre3D, the main thing that seems to be lacking is the built-in editors, and at least Ogre3D is currently mostly a graphics engine rather then a complete game engine (i.e. physics built-in; does provide wrappers for ODE and other physics engines). My assumption is that is just a matter of time before Ogre3D and other engines catch up with the top Indie commercial engines?
Lastly, I will be using the game engine for not only making games, but for some scientific applications as well. Also, I started using C++ 10 years ago and have been using Python since January 2002, so I'm ready to dive into the engine code."
However, there is Torque Game Engine Advanced (TGEA) which adds shader support, the Atlas terrain paging feature, and a few other nice features, but since is DirectX9 based it is no longer cross-platform. I have also heard rumors about support for the engine to be a little on the lacking side, yet the Torque community seems to be rather large compared to other commercial engines. Are the complaints just from people who don't really know how to program expecting to be able to edit the C++ of the game engine, or are capable people really having trouble? I've heard rumors about stability of TGEA compared to TGE? For those of you who have used TGE or TGEA, would you recommend it over other engines?
The C4 Engine looks nice as well, but seems to be under active development and less mature, but might it potentially be a more modern game engine? Also, it supports Windows XP and Mac OS X, which is better then just Windows.
Here are the features I am hoping for are: a cross-platform engine, if possible; modern shader support; a built-in terrain paging system; and model, material and animation import from Blender 3d.
When it comes to the open source engines like Ogre3D, the main thing that seems to be lacking is the built-in editors, and at least Ogre3D is currently mostly a graphics engine rather then a complete game engine (i.e. physics built-in; does provide wrappers for ODE and other physics engines). My assumption is that is just a matter of time before Ogre3D and other engines catch up with the top Indie commercial engines?
Lastly, I will be using the game engine for not only making games, but for some scientific applications as well. Also, I started using C++ 10 years ago and have been using Python since January 2002, so I'm ready to dive into the engine code."
I can't stress enough to avoid TGEA. I can't speak for the original engine (TGE) but the new version has no documentation, and a pervasive attitude of "If you can't figure it out without help, you shouldn't have gotten the Advanced Engine".
The engine is simply not geared towards direct interfacing. If you're happy using TorqueScript to do everything, then give it a shot. If, like me, you need to interface with other C++ components, you're in for a tough ride.
Have you investigated the open source versions of Doom and Quake? While maybe a bit dated (the Quake III engine is from 1999), they are GPL and have a lot of community support.
The original Doom engine has been used in a shit load of games since (including games available for a wide variety of platforms, such as portable music players).
The Wikipedia page, http://en.wikipedia.org/wiki/Quake_III_engine has a lot more information about the Quake III engine, and a lot of handy links at the bottom (such as http://www.icculus.org/quake3/ "A project to remove bugs, clean up source code and to add more advanced graphical and audio features via SDL and OpenAL, and to act as a clean base package to build other projects on.")
Go get it!
I wank in the shower.
jmonkeyengine http://www.jmonkeyengine.com/
Runs on OSX, Win, and Linux. Advanced Shader Support. Open.
"Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
To give you my background, I'm a TGE, TGEA licensee as well as a licensee of the RTS kit and many of their content packs. I imagine I'm going to get shot for this post, if even half the Torque fans from Gamedev.net visit here also then I'm expecting a -1 Troll moderation within around 30 seconds, but seeing as I can give an honest, first hand, from the trenches opinion of Torque, here goes:
It's probably one of the things I truly regret spending money on the most. Garagegames put a lot of money into marketing and hype but never pull through on their promises. TGEA arrived 2 years late and by the time it arrived had many major features cut from it such as the promised built in terrain editors, OpenGL support and so forth.
The RTS kit was another scam in this respect, it doesn't contain pathfinding, support for RTS AI or anything of the sort by default, Garagegames claim this is because "all games need different pathfinding/AI requirements" however this argument is extremely weak - let's face it, core AI is pretty standard and surely it's better to provide at least some AI to the demographic they sell the engine to on their "why make a mod when you can make a game" premise that provide nothing at all. Also, the RTS kit is about 3 versions out of date with the main Torque Game Engine - Garagegames don't keep it up to date with the main codebase, they simply tell you to do it yourself.
TorqueX is yet another example of Garagegame's cutting of features and delays, it was meant to be ready with 3D support included for XNA GSE's release in their original press release, now however it's still entirely unreleased and anything other than basic 3D has been cut from the initial release.
Do not trust Devmaster.net, it's sponsored by Garagegames and is heavily biased, in it's top 10 list of commercial game engines (http://www.devmaster.net/engines/) Torque is always listed first, even when the site's very own ratings system shows TGE as only have 3.5 stars when the likes of C4 has 4.5 and TV3D SDK 6 has 4!.
Other than that the issues with TGE and TGEA are that the engines have just turned into such messy hacked together swamps of code over the years they're really tough to use. Many features of the engine are also half-assed or extremely dated compared to other offerings on the market, some are even suffering from long running bugs that can even result in fatal crashes - physics and vehicle support for example really need a complete rewrite for anything other than the very simple games that you see in the Garagegames store. The other problem that plagues all GG's products other than TGB is a severe lack of decent documentation - this is really bad when the engine is such a nonsensical mess. The Torque code base is ancient and new features have been hacked in through the years - it's either time to write it off and start from scratch or a MASSIVE refactoring session to clean up and update the code base. The sad fact is, the learning curve for the combination of such a messy engine, non-intuitive scripting system, poor documentation, requirement to fix a lot of things yourself means that you're not far off writing your own engine from scratch over using TGE/TGEA.
So is all of Garagegames stuff bad? No not at all, Torque Game Builder is pretty good if it's 2D your after, that's one product that has a whole lot of polish, good documentation, a good toolset and so forth. Arcane FX is absolutely fantastic too, but this is a 3rd party addon to TGE and is hence unfortunately absolutely wasted on this engine.
I think the problem Garagegames has is bad management and a marketing department that doesn't seem to worry about outright lying to make sales (not that that's a rare thing in marketing of course!). The management problems I'm referring to is the fact they keep announcing new engines or product lines without completing their last projects! Torque Game Builder game along when they were claiming they were too busy to fix the RTS kit. TorqueX came along when not only was the RTS still neglecte
Yes, getting TGE to run on Linux is an ungrateful task, to say the least.
Some time ago I got lured into buying it because they used to state on the product page that they supported linux. I bought both Torque Game Engine (3D) and Torque Game Builder (2D).
Long story short, the Linux version is far from the quality of the Windows and OS X counterparts (when it runs at all) and the company dropped Linux as a supported platform, "because it consumes too many of their resources". Instead, the Linux version is now supported by the community - but it bears the same price tag, nonetheless...
There used to be a guy who offered himself to help with the Linux version of the engine. He did this *for free*. Garage Games used to take months to reply to his e-mails when he sent them a message saying "hey guys, you just released a new TGE version so I took care of making a linux release, it's ready for you to put on your page". There was somewhat of a revolt on the forums and Garage Games eventually worked with this guy for some more time (still for free) and after that, I just gave up on Garage Games, because their support really suck. It's just as UnDiWhan said on another comment: a pervasive attitude of "If you can't figure it out without help, you shouldn't have gotten the Advanced Engine". This is also valid for the regular TGE and TGB.
Things may have changed, though, because Garage Games created a buzzword for their documentation and also a site to host it. But again, just like the Linux versions are "community-supported", the documentation is mostly (all?) user created content - it's a Wiki...
As for Ogre3D, I wouldn't say it's slow, it's actually pretty good and pretty fast. But if you don't use it correctly, it can kill your game. I've seen games using Ogre very efficiently and others that were slow as hell.
I like the documentation on CS because it is an API that's easy to understand. But what really shines in CrystalSpace's favor is it's community. I wouldn't be able to code in 3d if it wasn't for handholding by the developers. They walked me through compiling and building, and then they answered my questions when I got stuck. I think they're so friendly, that I casually talk about my game I'm making in help questions that I post to the mailing list. CS is the 3d engine that I am writing: www.roamingdragon.com
I'm not saying the other engines could be bad, but I know that CS is awesome.
God spoke to me.
Having worked on a 3d engine for the last 7 years the most important advice I can give you is "only invest in a game engine that can do what you need right now".
Every game engine I've seen, ours included, have a list of great upcoming features. But there is no guaranty that any of those features will be implemented by the time you need them (if they are added at all).
Spell cheek you've failed me four the last thyme!