CMPS160/L Project: Shadow Volumes and Reflection

Colin Peter and Nikita Sokolnikov

Description:
This project will implement two real-time graphics techniques first used in Id Tech 4, better known as the Doom 3 Engine.
The first of these are volumetric shadows, a shadowing technique that produces more accurate sharp shadows than more popular, modern shadowing techniques, but at the cost of being more CPU-heavy
The second of these is realtime plane reflection, generally not seen in modern applications due to the high cost of re-rendering the whole scene, and incompatibility with curved or rough surfaces


User's guide:
Controls work the same as for program 3. Program 3 was modified to make shadows using shadow volumes like Doom 3.
In addition, a mirror was added to reflect the objects
The mirror does not cast shadows, and neither do the walls of the bounding box. The light source is the small cube.


Here is a video of the project in action:


Screenshots: