A voxel cone tracing implementation for real-time global illumination. Voxel cone tracing is used to create effects such as transparency (by refraction), reflections (diffuse and specular) and soft shadows. The implementation traces cones through a 3D texture. The 3D texture represents a directly lit voxelized scene.
See following URL for a video demo: https://youtu.be/cuCwyIBOapY
Inspired by "Interactive Indirect Illumination Using Voxel Cone Tracing" by Crassin et al.(Cyril Crassin, Fabrice Neyret, Miguel Saintz, Simon Green and Elmar Eisemann) https://research.nvidia.com/sites/default/files/publications/GIVoxels-pg2011-authors.pdf
Course project in TSBK03 (Advanced Game Programming) at Linköping University by Fredrik Präntare. See the report here: https://prantare.files.wordpress.com/2016/12/frepr183_voxel_cone_tracing.pdf
This demo requires OpenGL 4.4 to run.
Rafael Sabino has adapted this project to run on Mac OS X. For more information, see: https://github.com/phonowiz/voxel-cone-tracing.
Feel free to use, modify and share. Sharing is caring!