Skip to content

Fjalar/weekend-rt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ray Tracing in One Weekend

Ray Tracing in One Weekend book series, done in Rust

Features

  • Multi-threaded CPU raytracing of spheres
  • Global/indirect illumination
  • Multiple materials, image textures, and noise textures
  • Only dependencies aside from std are for randomness (currently rand and rand_chacha)
  • Serialization of PPM files for render output
  • Deserialization of PPM files for texture input

Usage

Run using cargo run --release, choose scene by entering a number when prompted, wait for render to finish, then view the resulting render.ppm in the root directory of the project

Example renders

Render: many spheres Render: three spheres Render: checkers Render: earth Render: perlin

Future plans

  • More materials, including emitters, volumetrics
  • Triangle/quad primitives
  • Parsing of some simple 3D model format
  • Optimizations (e.g. surface area heuristic for BVH)

Resources

About

Raytracing in One Weekend, in Rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages