There are so many game engines out there that yet another one is just a complete waste of time, for both the author and the potential users. Am I right?
I know it wasn’t a waste for me, I learned plenty of stuff and had lot of fun programming it. It might have ceased being a waste for others too: the project grew a lot during those years and could come in handy sometimes.
It will likely be less fascinating to users of big engines like Unreal, Unity or Godot, but be interesting for users of smaller ones like LibGDX and Cocos2d-x, or frameworks like LÖVE, SFML and LWJGL.
Some of the use cases for it are:
1. It could be used for small multi-platform 2D games. You can program your game in C++ for maximum performance and the ability to customize the engine itself or you can use the Lua bindings for prototypes or game jams.
3. When compiled as a static library it becomes a graphics demo framework and every low-level implementation class would be accessible, including the OpenGL and threading layers. All the other features would still be available, like the multi-platform abstraction, the template library or the RenderDoc and Tracy integrations.
4. Last, but not least, being a minimal open source engine programmed by a single person, I hope it might represent a starting point to learn and experiment with game engine programming.