Starfall 3

Thứ Hai, 17 tháng 6, 2013

thumbnail

DevCorner: Underapprechiated game engines

In my never ending search for a FOSS game engine that is usable for game modding with out having to reinvent the wheel (nor requiring to be a C++ code master) & having decent tools for content creation (because I am spoiled and think that is a minimum requirement for a game engine) I have become quite disillusioned lately. That is because *spoiler alert* sadly there is none so far... but a few are close luckily.

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.

About

Lưu trữ Blog

Labels

0ad 2d 2x0ng 3d 3D modeling 4dmaze 8kingdoms a las barricadas A3P abe affcity agentkeeper alienarena allacrost angel-engine angstron2 annchienta annex-glest-mod antargis apricot arbarlithii arcade ardentryst ardorcraft arewealone armagetronadvanced art article arxendofsun arxliberatis as3sfxr asc assaultcube AtomicGameEngine atomictanks atomicworm aurora award axis revenge balazar3 ball-rolling bananabread basecommand battery battletanks beasts bethewumpus bge biniax2 bitfighter Blackvoxel blender blendswap blobandconquer blobwars blockattack blockling bloodfrontier bloodmasters bofh bombable bombcar boomwar boson boswars brainworkshop bullet burningdust burningwell bushidoblocks business bygfoot caspring cataclysm catchemrpg cgmadness cgtextures cheeseboys Chocolate Doom choria civil civitas clonk cocos2d code43 codecombat coldest combatsimulator commanderstalin commercial community competition conquest conquests contentcreation contest-gamedev corebreach countryoforigin craft creativecommons creepsmash crimsonspace critterding crowdfunding crowdsourcing crystalscrolls crystalspace cube Cube2 cuboid-clone cuby daggerwindscrolls dagon dangerdeep dangerman darkmod darkphear darkplaces data dealer dawn deadmorning devcorner dhewm3 Diablo diamondfighters digitalman dnt Doom Doom3 Dory game Wheely 3 doryenarena dotg dotmodeller dragonhistory duckmarines dungeonhack dungeonmapper eatthewhistle ecksdee edgar egoboo eisenstern emiliapinball endgamesingularity engines eot epiar epoch erebus ethanon event-conference evidyon evilcult extremetuxracer fac FGD fife flare flightgear flipout foi formido formularetro forumdown fps Freeablo freeartsearch freecol freedink freedroidrpg freegamedev freegamer freeorion freerails freetrain freetumble frogatto game engine gameboom GameDevelop gcw-zero gearhead2 gemrb genre-adventure genre-buildingsim genre-cards genre-defense genre-educational genre-engine genre-exploration genre-flighsim genre-fps genre-mmo genre-platformer genre-precision genre-puzzle genre-racing genre-roguelike genre-rpg genre-rts genre-sandbox genre-shooter genre-space genre-spacesim genre-spacetrade genre-tbs gigalomania glamour glc glest GLSL gluon goblinhack godot goollie Gorynlich grail grandwing gsoc gta-mud gunfudeadlands gusanos h-craft hackwars haiku hardware hedgewars hero of allacrost hex-a-hop hexenedgeofchaos hextd hive holoracer holyspirit howski html5 iamar iceball idtech2 idtech3 idtech4 impulse indiegogo intensityengine interview ioquake3 iqm iris ironbane irrlamb irrlicht islandcommander isoccer iteam ivan ivan3d ivanx jag jcrpg jediknight jme jmonkey3 jrpg jumpman jvgs kambi vrml kazama keeperrl Kelgar knights krank kwestkingdom l-echo lalalove Lamiae lasertactics lavirinto3d lbaprequel legesmotus lemmingballz levelhead libcrtxy liberated pixels cup libtcod licensing lincityng linux linuxgameawards linwarrior3d lipsofsuna lordsawar love löve löve2d low lowpolycoop lpairs ludumdare lugaru mac markiv mazzeroth mechanicaltower MegaGlest metalchaser metalglovesolid metallblech micropolis militiadefense minetest-c55 MIT modding mode-multiplayer mode-onedevicemultiplayer mode-singleplayer mofrag mokoi moleinvasion monkeyworld3d mono Moonshades mozilla myman mynet naev nethack3d neverball newfoundroom nexuiz nova pinball occulusrift octaforge ODE ogre3d olpc oolite open-source openanno openarena openart opencaesar3 opencity openclonk opendungeons openflashpoint openfootball opengameart openig openjk openlierox openmw openoctane openra openracer openttd openxcom orbit-hopper osare osgg osgs osx overdose Overkill ows pacdefence paintball2 palomino panda3d pandora parpg patreon penumbra physica physics pinball pink-pony pixel art plague-like platform-android platform-html5 platform-ios platform-java platform-linux platform-osx platform-webgl platform-windows platinum arts sandbox platinumarts pleethebear plexus plutocracy popcap portalized portrait-marathon PotM privateergeminigold programming projectalexandria projectcitadel projectfootball projectofthemonth pseudoform purity pygame pyromancer q2w q3rally qfusion qonk quadropolis Quake Quake2 quantum racer raceracer racing racr radakan raidem rainbowrooms raknet ransom raver realtimechaos redeclipse retribution engine retux review rigsofrods roguerepublic ROTC rpg rsoc rubyweekend runesword ryzom sampleswap sandbox sar sauebraten sauerbraten sawk scifi scorched3d scourge scourge2 sdl sfxr shotgundebugger shunnedsurvivor silvertree simontatham simutrans simwar skyriot skyscraper slickworm slothrpg smokinguns solarus soulfu sourceforge space station 13 spacenerdsinspace speed-dreams spicetrade spring spring1944 standalone Starfall Starfall kids Starfall math Starfall Wheely 3 Starfall Wheely 3 Game steam stonesoup strategy Strife stuntrally style-historical style-retro style-sci-fi subterranean summerofcards summoningwars superpowers supertux supertux3d supertuxkart survey syntensity systemshock Tales of Maj'Eyal taspring TBS td teewars teeworlds tennix Terasology terminal-overload Terra Centauri Tesseract The Castle Doctrine theskyofverdun theurquanmasters thewhitechamber thousandparsec thundernlightning tiled tol ToME torcs torque2d torque3d tournament towerdefense tpb3d Tremfusion tremulous trophy tutorial tuxkart tuxracer tv tvocfi ufoai unknownhorizons unkownhorizons unvanquished Urho3D uzebox vacuummagic valyriatear vaporware vdrift vdrift-ogre vegastrike veraball video vikings violetland vote voxel voxelstein warsow warzone warzone2100 waymark weaver webmegapong wesbowl wesnoth Wheely 3 Dory Games Wheely 3 for kids Wheely 3 kids Wheely 3 online widelands windows windstille wing wizznic wordwarvi work worldforge worldki worldwarvi wormux wtactics wyrmsun xdriller xenogeddon xna xonotic xreal ya3dag yodasoccer yofrankie ysflight ysoccer zaz zelda zero-k zeroballistics
Được tạo bởi Blogger.