|
The KISS Game Engine. |
|
| Main Parallelism Runtime Types Memory Management Graphics (in process) |
With team sizes skyrocketing and big companies
being what they are it seems increasingly unlikely that I'll get to
design and build a complete game engine ground up again at work. So
I figured I'd build one here in my "spare time". What is KISS Keep It Simple Stupid I will build the components here with parallelism/multithreading in mind, since I think it's an interesting constraint. This will necessarily make things more complex than a simple none threaded solution. What is a game engine This is a surprisingly difficult question to answer, in terms of the original Quake or Unreal engines it was literally the original games and tools without the game code. That's not what I intend to build here. I'm going to be building a framework consisting of small separable components to do the grunt work of a game and possibly if I get extremely bored a simple toolset.
The General Approach The easiest way to build a game engine is to build a game, and to look at the components we'll need to build as we need them. It'll also give us something of a simple test bed, to verify our ideas. We'll be starting with our graphics engine, but before that we need to get some basic stuff out of the way.
|