Real time Global Illumination Using Voxel Cone Tracing
This report presents a real time global illumination algorithm that was implemented during the course "Advanced Game Programming" (alias TSBK03) at Linkoping University. The presented algorithm supports indirect diffuse lighting, glossy reflections, refractive lighting (transparency) soft shadows, and emissive surfaces at interactive frame rates. The algorithm is a 2 pass real time global illumination technique based on lighting voxelization and cone tracing. The direct lighting of a scene is voxelized in real time using the GPU hardware rasterizer. The voxelized lighting is represented using a 3D texture, and filtered linearly using a 3D mipmapping scheme. Voxel cones are then traced throughout the different mipmap levels in order to approximate indirect illumination. 3 different cones are introduced: shadow cones, diffuse cones, and specular cones. The specular cones are used in order to create glossy reflections and refractive lighting, the diffuse cones are used in order to emulate indirect diffuse reflections, and the shadow cones are used in order to approximate soft shadows and rough ambient occlusion. The technique is view independent, almost scene independent, and supports fully dynamic environments.