Progress Report (and in-house engine stuff!)
It has been three months already? Wow.
Progress has kinda slowed down the last couple of weeks due to summer being ruthless, as always. However, while it may seem that there’s nothing going on, we are still working on our projects to complete them in due time.
Digitality is still the main project that most of us are working on, but whenever I’m not in the mood for breakout, I’m working on our own in-house game engine, currently named Prospera. There’s not much to show yet; it’s for the most part the spiritual successor to ZyeWare, but with a revamped internal structure and more care for state-of-the-art paradigms (GC will still stay part of it, though!). Crucially, I’m removing many self-written abstraction layers and exclusively build on top of SDL, reducing workload as well as enjoying the many benefits this library has. Moving SDL into the core of the engine allows me to use it anywhere in the code, where previously I couldn’t be sure if SDL was even available.
The rendering subsystem will therefore be rewritten entirely, and build on top of SDL_GPU, allowing me to use Vulkan, Metal and DirectX. This particular restructuring takes a lot of time, as ZyeWare had a different way of handling rendering; essentially, as I’ve only known OpenGL at that time, many parts of the engine follow it’s way of “binding” data, which is kinda incompatible with more modern graphics APIs.
One other change is the way Prospera will be used; it will still be possible, ala ZyeWare, to define your own MainLoop and do whatever the heck you want with it, and have access to all low-level layers of the engine (e.g. GraphicsServer, InputServer etc.) The main way games will be made though is via an Entity-Component-System approach, built on top of the low level structures. Since I’m not yet this far into development, I haven’t given that part too much thought, but I’ll update when the time comes.
Will Prospera replace Godot? Hell no, neither on a global scale nor for us as a team. But some games we’ll develop with our own engine, because to be honest? That’s one of my childhood dreams, and I’m gonna make it a reality, one way or another.
If you want to enjoy some D, I’ll invite you over to Prospera’s Place, but be aware that there’s not much to see there yet.