Quick Look

Building the Project

GitHub Repo

GitHub Releases


  • WASD - Move
  • Q/E - Up/Down
  • Arrow Keys - Rotate Camera
  • IJKL - Move Viewport

This application renders .obj models in a console application using a console buffer as a display. I thought it would be fun to create a renderer that doesn't rely on any rendering APIs. Thus forcing me to learn how to create every step of the rendering pipeline and all the math that comes with it.

Initially I used Premake for the build system but switched to CMake for easier integration with GoogleTest and SDL.

I now have a greater understanding and appreciation for coordinate systems in partcular and all the weird background stuff my GPU does to draw games to my screen.

There's still plenty of work to be done and in it's current state this renderer is very limited as to what kind of image it can produce. However, I consider this project to be ongoing so who knows what it will turn into. :)