Skip to content

An educational rasterizer with 0 dependencies for SITCON, showcasing the principles of graphics through a CPU-only programmable pipeline with features like shadow mapping, deferred shading and SSAO.

License

Notifications You must be signed in to change notification settings

alanjian85/rendo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rendo

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.

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 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.

References

About

An educational rasterizer with 0 dependencies for SITCON, showcasing the principles of graphics through a CPU-only programmable pipeline with features like shadow mapping, deferred shading and SSAO.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published