Why GI?
Why GI?
What is GI?

Direct lighting

Indirect lighting

What is GI?
What is GI?

Only Direct Lighting

Direct + Indirect
What is GI?

ON

OFF
What is GI?

●

Direct lighting – sucks

●

Direct + Indirect lighting – cool

What is GI?
GI in 99 Lines of C++
8 spp
13 sec

200 spp
5 min

1000 spp
25 min

25k spp
10.3 h

2.4 GHz Intel Core 2 Quad, 1024 x 768, by Kevin Beason
GI in 99 Lines of C++

●

Brute force – really heavy
Hemisphere Lightning

MotoGP
Hemisphere Lightning

Radiosity Map
Hemisphere Lightning

●

Fast & simple

●

Too simple

Hemisphere Lighting
Lightmaps

Mirror's Edge
Lightmaps
Lightmaps

●

Only static objects
Light Probes

Killzone 2
Light Probes
Light Probes
Light Probes
Light Probes

●

No dynamic lights

●

No self-illumination of dynamic objects
Light Propagation Volumes
Light Propagation Volumes
Light Propagation Volumes
Light Propagation Volumes
Light Propagation Volumes
No propagation
Light Propagation Volumes

After 4 iterations
Light Propagation Volumes

After 6 iterations
Light Propagation Volumes

After 8 iterations
Light Propagation Volumes
Light Propagation Volumes
Light Propagation Volumes

●

Dynamic lights

●

No indirect shadows

Light Propagation Volumes
Voxel Cone Tracing

Algorithm
●

Voxelize the geometry

●

Construct sparse voxel octree (SVO)

●

Inject direct lighting into the octree

●

Propagate radiance

●

Gather radiance by cone tracing
Voxel Cone Tracing
Voxel Cone Tracing

Voxelization
Voxel Cone Tracing
Sparse Quad-tree
Voxel Cone Tracing

Sparse Voxel Octree
Voxel Cone Tracing
Voxel Cone Tracing

Light injection
Voxel Cone Tracing
Filtering up
Voxel Cone Tracing
Voxel Cone Tracing
Voxel Cone Tracing
Voxel Cone Tracing
Voxel Cone Tracing

37 ms

32 ms

14 min
Voxel Cone Tracing

●

Dynamic lights & objects

●

Shadow casting

●

Huge amount of memory
Check out more knowledge sharing here:
Slideshare - https://www.slideshare.net/Sperasoft/
SpeakerDeck - https://speakerdeck.com/sperasoft
GitHub - http://github.com/sperasoft

Learn more about Sperasoft:
Company site - http://www.sperasoft.com/
On Facebook - https://facebook.com/sperasoft
On Twitter - http://twitter.com/sperasoft

Gi = global illumination