All Projects → trevor-m → deep-gbuffers

trevor-m / deep-gbuffers

Licence: other
Implementation of "Fast Global Illumination Approximations on Deep G-Buffers" (Mara et. al, 2016) using C++, OpenGL, and GLSL

Programming Languages

C++
36643 projects - #6 most used programming language
GLSL
2045 projects
CMake
9771 projects

Implementation of Mara et al: Fast Global Illumination Approximations on Deep G-Buffers

See report.pdf for more information. This project was built using the Glitter template, as a final project for CMPSC 280 (Advanced Computer Graphics, UCSB, Professor Pradeep Sen).

rad

Above: Single-scatter radiosity using multiple layers.

Below: Benefit of using multiple layers on McGuire et. al.’s Scalable Ambient Obscurance (2012). Ambient Occlusion from both layers (top), only the first layer (middle) and only the second layer (bottom). The red box highlights an area where the second layer provided a very noticeable correction to an error in a single layer only approach.

image

Building

# UNIX Makefile
cd Glitter
cmake ..

# Mac OSX
cmake -G "Xcode" ..

# Microsoft Windows
cmake -G "Visual Studio 14" ..
cmake -G "Visual Studio 14 Win64" ..
...

Controls

Movement

  • WASD to move
  • Left-click + move mouse to look around

Display Modes

  • Press 7 to view scene
  • Press 8 to view SSAO buffer
  • Press R to toggle single-scatter radiosity on/off (default: off)

Lights

  • Press 1 to select the first light
  • Press 2 to select the second light
  • Press 3 to select the third light
  • Press J and L to move the selected light source along X axis
  • Press I and K to move the selected light source along Z axis
  • Press U and O to move the selected light source along Y axis
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].