Friday, February 26, 2016

Regarding Game Engines, and please help me with something I should be able to work out on my own.

As I mentioned in the I Want post, I want to make a game engine.  I already know all the reasons not to.  I don't need to be talked out of it, cautioned, or let down easy.

What I do need is a place to start.  It's a long and involved process that no sane person would even take upon themselves without a very good reason, which I don't have (semi-passable reason, yes, but that's not the point), but I don't want to have to wait through the whole involved process to see results.

What I want is a scaffold.  Something that can fill in the pieces I haven't done yet so I can test the pieces I have done by ripping out that piece from the scaffold engine and substituting my own piece (with the extra coding needed to translate between my engine speak and existing engine speak.)

It's an inefficient ways to do something, but it promises what I so desperately need to keep motivated on this kind of large long involved process: instant grafitication.  I can see what the little contributions I'm making are doing before I actually have a fully working project that could show me that itself.

There's nothing nefarious about this.  It's common for early internal work to use assets from other people because, since it's early work they haven't made those assets yet.  Unreal and Idtech (Quake/Doom) have both released their source code.  That makes either one a logical scaffold since i can get my hands on all the code.

Here's the thing: the first thing I want to take a crack at is the world geometry.

Process is in theory simple enough:
1st or 2nd --find the world geometry math and coding in the existing engine, rip it the fuck out.
2nd or 1st --code my own world geometry
3rd -- create a wrapper around my own so that existing engine will be able to use it
4th -- put in my own stuff.

He's a significant problem.  Modern game engines are FUCKING HUGE.  Yes, I have the source code, but how do I even find the damned part I want (world geometry) in that massive pile of code?



  1. I have heard good things about, but not tried, the Blender game engine - in particular it's meant to be easily modularised. But take this with a large grain of salt; I may be completely mistaken.

  2. It depends on what kind of game you want to make - things like idTech Ave Unreal are probably meant the FPSes, whereas Unity seems to be an engine meant for more general things.

    As for poking about for world geometry, perhaps searching for physics, voxels, or vectors might be a place to start?