Cigg / Voxel-Cone-Tracing

Real-time global illumination

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Voxel Cone Tracing

Project in TSBK03 - Advanced Game Programming, at Linköping University.

The scene is voxelized and stored in a 3D texture. The voxelized scene representation is "cone traced" in the final rendering step to get indirect light in the scene.

Project members

Oscar Westberg
Mikael Zackrisson

Links

Requirements

  • CMake
  • OpenGL 4.1 support

Tested on Linux and Windows with Nvidia GPUs.

Getting started

Clone the repository using the --recursive flag to get all dependecies.

git clone --recursive https://github.com/Cigg/Voxel-Cone-Tracing.git
cd Voxel-Cone-Tracing

If you already cloned the repo:

git clone https://github.com/Cigg/Voxel-Cone-Tracing.git
cd Voxel-Cone-Tracing
git submodule update --init --recursive

Now generate a project or makefile for your platform

  mkdir bin
  cd bin
  cmake ..

TODO

  • Conservative voxelization
  • Atomic operations for image writing to get an averaged voxel value
  • Better mipmapping (faster + anisotropic)
  • Light injection like in the article
  • Dynamic objects
  • Maybe sparse voxel octree someday

About

Real-time global illumination


Languages

Language:C++ 73.7%Language:GLSL 22.9%Language:CMake 2.8%Language:C 0.6%