CUDA Path Tracer
October 2022
Description: A GPU-accelerated physically-based path tracer written with CUDA and C++. Parallelizes several steps such as camera ray generation, ray intersections, shading, and writing to the final output image.
See Github for full technical details and more images.
Features:
- Ideal diffuse, perfectly specular, imperfectly specular, and refractive surfaces
- Path continuation/termination with stream compaction
- Material sorting
- Caching first bounce intersections
- Acceleration structures
- Linear Bounding Volume Hierarchy (LBVH)
- Bounding Volume Hierarchy (with Midpoint and SAH split methods)
- Russian roulette ray termination
- Depth-of-field
- Stochastic sampled anti-aliasing
- Arbitrary mesh loading (with bounding box culling)
- Reinhard operator and gamma correction (conversion to sRGB)