GI580
|
Project: Global Illumination 580 Finished: Fall 2008 Context: Final Project for graduate level Computer Graphics course at USC Team: I led a team of 5 |
Tech/API/SDK: C++, PThreads Scope: Created from scratch, very literally Assets: Textures are procedurally generated, Teapot is free |
We basically created a pretty sophisticated RayTracer completely from scratch using nothing but C++ and PThreads. It supports several primitives, model loading, several light types including area lights, soft shadows, procedural Perlin Noise textures, transparency and anti-aliasing as well as all of the required optimizations to render images in a reasonable time such as threading, AABB collision detections, Octrees and so on. We also implemented Global Illumination using Photon Mapping techniques.
I did most of the RayTracer work aside from the Global Illumination part.