Simple software renderer implemented in rust from (pretty much) scratch without the use of the graphics API, with the goal to understand how does the GPU work.
- Depth buffering
- Face culling
- Near and Viewport triangle clipping
- Smooth shading
- Camera
- Flat triangle filling
- Interpolated triangle filling
- Affine texture mapping
- glam (
glam
is a simple and fast linear algebra library for games and graphics). - SDL2 (used only to open up a window and present the pixel data).