CUDA Path Tracer
In this project, I have implemented a CUDA-based path tracer capable of rendering globally-illuminated images very quickly. Path tracing is a type of ray tracing which takes a random sampling of all of the rays to create the final image. This results in sampling a variety of different types of lighting, but especially global illumination.
Features Implemented in this Path Tracer:
Ray sorting by material type
First Bounce Cache
Stream Compaction to remove terminated rays.
Diffuse, reflective and refractive surfaces
Stochastic Sampled Anti-Aliasing
Depth of field using Bokeh effect
Motion Blur
Direct Lighting
OBJ Mesh loading with Bounding Volume Intersection Culling
Denoiser