Skip to content

OpenGL engine for rendering scenes with global illumination in real-time using a voxel cone tracer.

License

Notifications You must be signed in to change notification settings

atharv0goel/vxgi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

interactive-global-illumination

OpenGL engine for rendering scenes with global illumination in real-time using a voxel cone tracer.

TODO:

  • Refactor voxelization procedure into a separate class
  • Shadow map tight bound using AABB
  • Additional Textures
  • Specular Cones
  • Interactive imgui interface to edit light, material and models
  • Conservative Rasterization
  • Emissive materials
  • Dynamic mesh voxelization
  • Take atomic max of a colour for each voxel ??
  • Compute two light bounces ??
  • Possibly use assimp for a PBR based pipeline ??
  • Sparse voxel octree ??

ImGui Editor Options

  • Move point light source around and change its color
  • Toggle between viewing modes:
    • Visualization
      • Shadows
    • GI
      • Indirect Diffuse
      • Indirect Specular
  • Change material properties
  • Move objects around
  • Change voxel map resolution

Benchmark (needs to be redone)

The following benchmark is obtained on a single NVIDIA RTX 4090 GPU.

VOXEL_DIM 1280x720 1920x1080
512 54 FPS 54 FPS
256 55 FPS 55 FPS
128 56 FPS 56 FPS
64 56 FPS 57 FPS

About

OpenGL engine for rendering scenes with global illumination in real-time using a voxel cone tracer.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published