Completed a grad research project with teammate Ivan.
The goal of the project was to render physically accurate caustic effects through bodies of water in pbrt.
We added our work ontop of pbrt-v3, utilizing their Vertex Connection in BDPT and Vertex Merging in PM to recreate Vertex Connection and Merging (VCM).
I worked on the stage 1 (a and c steps) for VCM (In vcm.cpp from line 530).
This involved tracing light subpaths from all light sources, creating a vector grid search structure and storing the light vertices within the grid to be used for stage 2.
I also worked on creating all the scenes in blender and,
tested our vcm implementation against other rendering methods in various lighting and scene conditions.
Git contains file presentation, report and submission code for implmentation of VCM into pbrt.
In more detail... (from top to bottom)
- Final rendered images using our implemented vcm method.
- Contains pbrt generated files from our own created scenes and vcm method.
- Test scenes created in blender, plus some pbrt generated test scenes.
(Blender scenes do not contain water fluid data, so it will need to be reconstructed if repurposed.) - vcm and api file integrated into pbrt.
For a general understanding of the project,
The final project presentation contains a very good summary of all the work done for the grad project.