/durer_renderer

Software Renderer written in Rust

Primary LanguageRust

Software Renderer written in Rust

Up to this point almost everything was based on the amazing articles "Computer Graphics from Scratch" by Gabriel Gambetta (which recently became a full fledged book but still accessble online here https://gabrielgambetta.com/computer-graphics-from-scratch/index.html). Very recommended for the complete beginners in computer graphics (like myself).

What's new:

Textures

Textures

Phong Shading model

Phong Shading

Gouraud Shading model

Gouraud Shading

Point lights and specular component

Point light

First attempt at shading (flat, ambient + diffuse only)

Flat Shading Flat Shading

DepthBuffer implementation

Depth Bufer

Split triangles when clipping

Split triangles

Clipping by whole polygon

Clipping

Rasterization: model, instances and transforms

Spheres

Ray tracing: reflections

Spheres

Ray tracing: shadows

Spheres

Ray tracing: add specular component

Spheres

Ray tracing: "bumpy" spheres and point light

Spheres

Ray tracing with shading (ambient + diffuse)

Spheres

Basic ray tracing (no shading)

Spheres

Read models from PLY2 format

Twirl Twirl

Rotated cube (parametrized model)

Faces

Face visibility detection

Faces

Wirefame cube

Cube