Monday, June 17, 2013
DevCorner: Underapprechiated game engines
The usual contenders for 3D action games are your mixed assortment of idTech based engines, most notably ioQuake3. There are a few upcoming contenders like Unvanquished's Daemon engine (which is a mix of ET:Wolf, ioQuake3 and Xreal) and a yet to emerge idTech4 based champion (my uninformed guess is that it will be dhewm3). But all of them lack a decent game-play scripting function.
On the other side of the idTech spectrum, there is the idTech1 based granddaddy DarkPlaces, which while having advanced to an quite impressive feature set, suffers a quite a bit from its nut-bolted & mostly undocumented client side add-on on the already a bit arcane script language QuakeC.
Interestingly the idTech2 based engines get little attention though. I have highlighted a few nice game projects based in it in the past, but it is probably due to the fact that each project is hacking on their own engine fork, that none has gained prominence as a game engine on it's own. But feature wise the engines behind AlienArena, Overdose and Warsow are probably the most advanced.
The last one of these, has been probably the most overlooked, with the game itself not exactly open-source friendly and the engine being developed more or less behind closed doors. It seems however that this has changed now, although given recent project news it is unclear what made them change their approach. But an all new version of it is now on Github with the main developer mentioning a few really nice changes here. Let's hope it isn't just a "source-drop" of a dying project, as after digging into it a bit (the documentation is really fragmented and lacking) I have to say that it includes a few really awesome features not commonly seen in other FOSS engines:
Besides being really performant, it is fully scriptable and has some quite unique multiplayer features like awards, friendlists and persistent game statistics. It also seems to make good process in having easy to edit GLSL shaders, which I have realized is a much rarer feature than I originally thought. Last but not least it has a really modern looking and fully scriptable menu and HUD.
Ah and before I move on to non-idTech based engines I should mention Engoo for those looking for a modernized software rendering engine based on idTech1 (there was some controversy over it, so I am trying to show some support for its further development here).
Ok, that covered, what are some maybe under appreciated non-idTech 3D engines?
First of all I should probably mention the well known ones for the sake of completeness: Cube2, Ogre3D and the new big player Torque3D. All of which are IMHO still failing to provide a good platform for easy game creation (mainly due, following the same order: in-fexibility & lack of scripting; huge mess of independent parts & bad toolchain; lack of Linux port & buggy and overly complicated toolchain).
One of the shining but lesser known examples of trying to improve the status quo is the jMoneky3 engine. Even though it is still a bit bare-bone (e.g. lacking game frameworks) the nicely integrated SDK and the great new node based GLSL shader editor keeps on attracting my attention. Similary the BlenderGameEngine sure has a few great advantages due to its tight integration. Sadly it seems to be the unliked stepchild of the Blender3D project though, which some quite serious limitations and awesome additions like the candy branch never reaching the the main release.
Then there are the still very much alive big names of the past: Irrlicht and Crystal Space. I am not exactly sure why those never quite reached the required mass to become the engines of choice, but I guess the license mess around Irrklang (and other non free but more or less required addons) and the CS Yo Frankie disaster might have to do with it. But at least Crystal Space was accepted as a hosting organization for this year's GSoC again, so they must be doing something right.
Last but not least, I would like to give a mention to a relatively new contender: Octaforge, which has supplied a steady stream of updated betas lately. The interesting things about Octaforge is that it takes all the good things from Cube2 and combines it with a much updated renderer (Tesseract) and full lua script support. But sadly it isn't quite there yet, and the move to a scripting language required the removal of all the nice game-code that it inherited from Cube2.
As closing remarks I have to admit that this article was rather lopsided towards FPS game engines (and more general purpose ones). Of course there are many great other game engines in the FOSS sphere that focus on RTS or (MMO)RPG games etc. I do however feel that many of the grievances voiced here probably apply there too, but maybe it isn't quite as frustrating there as in the FPS genre.
But if you have some better insights into those type of engines feel free to comment below!
tl;dr: the author (as an old school modder) is frustrated that after all these years there still isn't an FOSS FPS engine that can be modded as comfortably as the Half-Life2 engine or UDK. Don't miss the new qfusion stuff though.
Sunday, April 14, 2013
SuperTuxKart accepted in GSoC2013!
This year, quite a few interesting FOSS game projects got accepted (again) and one being our very own friends of the SuperTuxKart project.
Read more about their role as a mentoring organization here. So how about applying as a participant yourself and helping out this great FOSS game?
You can also browse other accepted mentoring projects here, if SuperTuxKart isn't your thing. Other notable FOSS game (engine) projects accepted are:
Nice summer of coding ahead :)
Wednesday, March 21, 2012
Summer of Code: Earn Money Developing Open Source Games
- Battle for Wesnoth
- Hedge Wars
- Unknown Horizons (includes FIFE)
- Crystal Space (includes DAMN)
- OGRE3D
- ScummVM
- WorldForge, CEGUI and Ryzom Core
- PySoy (under the Python Software Foundation)
Saturday, February 6, 2010
Open Source 3D Game Engines Updates
Crystal Space 1.4 is out. Features include improved animations ("integrating vertex based animation with skeletal animation") and terrain ("improves rendering and handling of large outdoor areas"), OpenAL for sound and an internationalization plug-in.
Panda3D has a prettier website, it released version 1.7.0 and apparently has a web-plug in. The new version makes it easier to crash the computer, but also gives a performance boost - with the magic of 'pointer textures'.
I have a little crush on Panda3D, because it gives access to 3D and audio with no complicated setting up through a scripting language (Python). On the other hand it requires 3D models to be in its own format and I find converting not very convenient. For example there have been problems importing animations into Radakan.
Ogre has a mascot, and it might even become freely licensed, somebody just needs to confirm this (by posting in the thread). :)
Besides that, 1.7.0 RC1 has been released, which is licensed under MIT license (before, it was LGPL). Here's what seems like a changelog.
Furthermore, the OGRE wiki moves from MediaWiki to TikiWiki. I suspect that a main reason is because a nicer OGRE style was made for TikiWiki, while the MediaWiki OGRE style looks bad. That may be a strange reason, but as long as it makes people use the wiki more, why not? Here's the discussion if you have an idea.
Just for kicks: a simple comparison of OGRE, Panda and Crystal regarding lines of code. What does it tell us? Well, that OGRE has the biggest codebase (even though it only handles graphics), that Panda3D is the most compact of the tree and that Crystal Space code size had strange ups and downs. Nothing more really.
Kambi VRML v2.0 is soon to be released, as is the final version of the demo game Castle (which will only mean additional eye candy to the game). What is more important, as soon as Castle 1.0 is released, work will start on Castle 2.
Castle 1 is a three-level game and I consider it hard (easy to die) and its controls to be rough. On the other hand the level design is great: the layout invites exploration the levels are linear, each with a goal to be reached. This way the levels actually are part of a game, rather than an open-ended tech demo. This is why I have a good feeling about Castle 2.0 already. Depending on whether the developers decide to work on Castle 2 on their own or to ask the community for contributions, we might see some more use of their forum.
OpenMW, the Morrowind engine implementation in OGRE switched from D to C++ (because of compiler availability and language popularity) and from svn+git to git-only (because of git-svn problems). Git clone instructions here. The next feature to be implemented are animations. A video was promised as soon as they are ready.
Old news: OpenGameEngine development stopped in October 2009, until a project manager wants to take over. The form in which the project is left is described as "usable" and "still too much work to make it worth the time investment".
Enjoy another ridiculous comparison of 3D (game) engines: OpenMW, KambiVRML and OGE. I just love diagrams. :)
We have a list of 3D engines on our wiki, if you want to dig some more. Also all FOSS game engine blogs that have feeds are included in the FGD development planet feed aggregator.












