Brief Description

This project's objective was to create a raytrace for CSC 473 that includes MonteCarlo indirect lighting and Motion Blur. The project based c++ and supports crossplatform.


MonteCarlo Indirect Illumination - one bounce, variable sample rate
Direct Illumination, Reflection and Refraction
Motion Blur - stratified sampling using anti-alias sampling
Povray parsing
Mesh File parsing (*.m)
Addition of velocity vector in povray for motion blur
Addition of mesh object to the povray file structure
Bounding Volume Heirarchiy (BVH)
Variable Anti-Aliasing
TGA and BMP output file support


Bunny_jumbo_tris.pov using BVH - 5.74s (< 6 seconds)
Bunny_jumbo_tris.pov without BVH - (60+ minutes)
That is over a 600X speedup!



Tyra with direct lighting

Tyra with indirect lighting (MonteCarlo)

Mock Cornell Box with MonteCarlo

Motion Blur

Cessna with no blur

Cessna with a little blur

Cessna with more blur

A loop of planes


Planes BVH view

Tyra BVH view


Monte Carlo Ray Tracing
Ray - Box Intersection
Povray Format
Advanced Ray Tracing