Writing a new Game Engine
Since I’ve got some free time now I’ve decided to write a nice and simple 3D engine, again. The main reason for this is to enter a small programming competition, but I’m taking care with the engine design and architecture so that I may use it in the future. Also it will be a nice addition to my portfolio.
My last attempt at making a game engine was over 7 years ago, back when I was learning all of this programming and mathematics stuff. Looking back over the code now I shudder at all of the simple and naive mistakes I made, and the faulty assumptions I was working with. Granted at the time the engine did have some spiffy features like a scriptable Quake3-like shader engine among other things. But in the same vein I made some serious snafu’s, like building my own container classes that could actually return null references! Though overall the learning experience of writing such a large amount of code for a project was the best thing that came out of it. (I’ll post the source code sometime so that people can learn from my mistakes.)
However this time around I’m putting in my years of experience and building this engine right. I’m using existing libraries whenever possible (go STL, ATL/WTL, and other acronyms) and thinking about what I actually need and implementing only that rather than spending a lot of time developing features I won’t use. Hopefully this will mean a reduced development time and a better finished product.
I’m going to update this blog on my progress and post some demos and screen shots of the project as it’s progressing.