Ray Tracer in C++

More Features


This is my 2nd Ray Tracer, this time written in C++. I wanted to expand on my first Ray Tracer, which I did essentially blind, learning the fundamentals.


I added features like:

  • Skybox Lighting
  • Stochastic Sampling
  • Depth of Field
  • Multithreading
  • Outputting to PNG files
  • Planes, Cones, and Unions


Optimization


I dropped the render time for a 4K image from 12 hours to 1 hour after implementing multi-threading with OpenMP.


I followed Ray Tracing in One Weekend - The Book Series while building this project for guidance on features. They’re a great learning resource.

Check out the source code on Github!

final-demo.png cones-unions/final-demo.png