Rendo ([ˈrɛn.doː], 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 Rendo.
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.
Run the following instructions to build Rendo:
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.