← Back to projects

3D Game Engine

Before this, I tried to write a 2D game engine on top of SDL. It got far enough to render sprites and handle input, but not far enough to feel like a real engine. Somewhere along the way I realized the part I actually wanted to build was the 3D pipeline, not another 2D framework. So I started over.

The 3D engine started on DirectX, because the tutorial series I was following used it. It's currently going through a render-system swap to OpenGL, mostly because cross-platform performance matters more to me than Windows-only ergonomics. Eventually I'd like the renderer abstraction to support multiple graphics backends so the engine works well on Linux too.

Honest disclosure: this repo predates my understanding of git workflows, so everything still lives on master with no branches. Treat it as a learning artifact-in-progress more than a polished engine.

What's next: finish the OpenGL backend, get a basic scene graph working, then start on physics. Collision detection (GJK + EPA) is the first thing I want to actually understand instead of copy.