Path Tracer

D3D11

C++

This project revolved around learning how to create a path tracer using Ray Tracing in One Weekend. My implementation utilized DirectX Math and the final image used an API created by Chris Cascioli that allowed the image to be created on runtime rather than outputted to a ppi file.


DirectX Math

The math for the project took advantage of the SIMD nature of DirectX math allowing us to use parallelism on the CPU to make calculations be solved faster.

Diffuse, Mirror and Refractive PBR Materials

The image shown at the start of the page depicts how we this path tracer gives us access to the most common PBR materials. Ray interactions with these materials change the direction of rays creating different interesting interactions.

Camera Focus

This renderer also allows for it to focus at different distances and changing the focus angle to give us a better approximation of a physical camera and more interesting camera effects to play with.


View the Code

Get access to the github that shows behind the scenes