CS 184: Computer Graphics and Imaging, Spring 2018

Final Project

Keming Kao, Denis Li, David Zhang

Title, Summary, and Team Members

NVIDIA OptiX as A Tool to Accelerate Path Tracing
By leveraging the NVIDIA OptiX API, we can speed up ray tracing using the CUDA cores in powerful GPUs that supports all the methods implemented in project 3. We expect to see a stark contrast between CPU rendering and GPU rendering as a result.

Team Members:
Keming Kao 26058492
Denis Li 26810418
David Zhang 26119473

Problem Description

While the pathtracer from the previous projects in class produce realistic results, the time required for rendering is incredibly long. With the OptiX api from Nvidia, this process can be shortened and can be done in real time as we can use the GPU to render.

Goals and Deliverables

Plan to Deliver

Replace all rendering in project 3-2 functionality with OptiX api calls in order to offload processing to the GPU.
- This should allow for near instantaneous rendering using the base code from project 3-2.
- We can measure the speedup by rendering the same image with both systems, although it is likely this will show much better results for the GPU-accelerated results.
Images should be compared afterwards to determine how close our implementation is to the final project 3-2 ray tracer.

Hope to Deliver

Modify the base code to allow for real time manipulation of the image.
- Since the assumption in the previous project was that rendering would take a large amount of time, scene manipulation after the rendering had started was minimal.
- Now that the GPU acceleration allows for much faster rendering, we should be able to enable real time manipulation of the scene.

Schedule

4/9: Installation of OptiX, ray tracing, bvh construction, normal shader
4/16: Diffuse shader, rendering time comparison to that of rendering on cpu
4/23: Support for other materials such as glass and metals, rendering time comparison to that of rendering on cpu, Milestone Video/Slides
4/31: Real time rendering
5/4: Final report website

Resources

OptiX Documentation
Project 3-1
Project 3-2