A small C++17 software renderer based on the TinyRenderer tutorial.
- A C++17 compiler, such as
g++orclang++ - GNU Make, or CMake 3.10+
From the repository root:
make
make runThe default command renders obj/african_head/african_head.obj. To render one or more other models, pass their paths through MODEL:
make run MODEL="obj/diablo3_pose/diablo3_pose.obj"
make run MODEL="obj/diablo3_pose/diablo3_pose.obj obj/boggie/head.obj"The rendered image is written to framebufferphong.tga in the repository root. Remove compiled files with:
make cleanFrom the repository root:
cmake -S . -B build
cmake --build build
./build/renderer obj/african_head/african_head.objOn Windows, run the generated executable from the repository root so that the bundled texture paths resolve correctly. The output file is still framebufferphong.tga in the current working directory.