rt
is a reasonably physical ray tracer I'm writing in Rust. It initially followed Peter Shirley's Ray Tracing in One Weekend series, and though it still shares some of the series' core architecture, it has grown and changed significantly since then.
Some of its features include:
- Live rendering with a preview window
- Meshes and mesh importing from .gltf and .obj files
- Texture and metallic roughness mapping for meshes
- A fancier sky model
- Frosted/fuzzy glass materials (vibes-based rendering technique)
- A bounding volume hierarchy I borrowed from bvh for faster ray intersection detection
- Enough parallelism using Rayon to turn my laptop into a heater
This is still very much a work in progress (see TODO.md
), and doesn't use the GPU at all.
Supports a live progressive render preview using winit and pixels so you can monitor your render's progress.
rt_preview_demo.mp4
Armor render based on "The Parade Armour of King Erik XIV of Sweden" by The Royal Armoury (Livrustkammaren) licensed under CC-BY-4.0
Car render based on "F&F 8 | Dominic Toretto's ICE DODGE CHARGER" by kevin (ケビン) licensed under CC-BY-4.0