Despite being deep into the 3rd year of both a physics degree and deep into a masters project, I’ve decided to try something quite ambitious. For ages, I’ve wanted to try my hand at writing a 3D game engine, and until now I’ve had neither the confidence or the knowledge to carry off such a feat. However, after my tenure writing heaps of C++ over the summer, I think I can have a decent crack at it. It’s not going to be easy, but it’ll be a really nice challenge to try and occupy my spare 10 minutes here and there. Say, hello to Axe Engine… well, kinda.
Progress so far…
My ultimate aim for this is to have a super flexible, ultra cross-platform, multi-threaded game engine that’ll be really nice to pick up and use. As a result, I’m writing it from the ground up to be cross platform, writing and testing it on both a Unix machine (my MacBook at the moment) and a Windows computer. Another thing that is woefully lacking is the abundance of 64-bit games engines, so I’m trying my best to keep to that as well, though I’ve literally got nothing in it so far, so that could all change. How far have I got? Well, at the moment I’m concentrating on the low level stuff like memory allocators and multi-threading. I’ve written a pretty nifty and lightweight stack allocator and I’ve also started to read up on POSIX threads / Win32 API Threads in an attempt to be as platform agnostic as possible. So, that’s how it’s going so far. My next job is to write a pool allocator, however this will prove to be a fair amount more convoluted as I want to try to implement byte alignment on that. Shouldn’t be too hard, but none the less it’ll require a little thought.
If you want to keep up to date with this little project of mine, I’ll be writing the occasional post now and then charting my progress. If you have been, thanks a lot for reading.