OpenGL Path Tracer
April 2022
Description: An interactive GPU path tracer written in GLSL. Uses physically-based techniques described in PBRT (Physically Based Rendering, 3rd Edition). The main render loop iterates through a maximum number of bounces per fragment, attenuating ray throughput at each interaction. Additionally, render passes are summed each iteration to produce an image that converges, otherwise it would only display a single iteration. Unfortunately, I am not able to share the code for this project, but I have attached some more renders below:
Features:
- Full Lighting Integrator (global illumination)
- Diffuse, specular, and transmissive materials
- Signed distance functions for rendering shapes
- Environment lighting
- Procedurally-generated textures (Worley, Perlin, FBM)
- Albedo and normal mapping
- Thin lens camera/depth of field
- QT GUI elements to change focal distance and lens radius