/reddere

A software renderer requiring no external libraries

Primary LanguageC++MIT LicenseMIT

Reddere

Reddere ([ˈrɛd̪ːeːrɛ], the Latin root of the word "render") is a simple software renderer requiring no external libraries. It serves as an educational tool for beginners looking to delve into the mechanics of popular graphics APIs like OpenGL and Vulkan. Essentially, it unveils the inner workings of rasterization, the core algorithm behind most modern games, by implementing it using only the C++ Standard Library.

The following image is the iconic SciFi Helmet 3D model, originally created by Michael Pavlovic and is available under the CC0 1.0 Universal license, rendered using Reddere.

SITCON

This renderer is also the main part of my presentation titled "High Performance Game Graphics: A Renderer from Scratch" at SITCON X (2022/9/21), whose video recording can be found on YouTube, and the slides are available here.

Presentation Video

Build Instructions

Run the following instructions to build Reddere:

mkdir build & cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .

The compiled binary can then be found in the build directory. It should be run from the root of this repository so that it can locate assets using relative paths.

References