gi = global illumination

45

Upload: sperasoft

Post on 13-Jan-2015

529 views

Category:

Technology


1 download

DESCRIPTION

GI = Global Illumination

TRANSCRIPT

Page 1: Gi = global illumination
Page 2: Gi = global illumination

Why GI?

Page 3: Gi = global illumination

Why GI?

Page 4: Gi = global illumination

What is GI?

Direct lighting Indirect lighting

What is GI?

Page 5: Gi = global illumination

Only Direct Lighting Direct + Indirect

What is GI?

Page 6: Gi = global illumination

ON OFF

What is GI?

Page 7: Gi = global illumination

What is GI?

● Direct lighting – sucks

● Direct + Indirect lighting – cool

What is GI?

Page 8: Gi = global illumination

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++

Page 9: Gi = global illumination

● Brute force – really heavy

GI in 99 Lines of C++

Page 10: Gi = global illumination

MotoGP

Hemisphere Lightning

Page 11: Gi = global illumination

Radiosity Map

Hemisphere Lightning

Page 12: Gi = global illumination

Hemisphere Lighting

● Fast & simple

● Too simple

Hemisphere Lightning

Page 13: Gi = global illumination

Mirror's Edge

Lightmaps

Page 14: Gi = global illumination

Lightmaps

Page 15: Gi = global illumination

● Only static objects

Lightmaps

Page 16: Gi = global illumination

Killzone 2

Light Probes

Page 17: Gi = global illumination

Light Probes

Page 18: Gi = global illumination

Light Probes

Page 19: Gi = global illumination

Light Probes

Page 20: Gi = global illumination

● No dynamic lights

● No self-illumination of dynamic objects

Light Probes

Page 21: Gi = global illumination

Light Propagation Volumes

Page 22: Gi = global illumination

Light Propagation Volumes

Page 23: Gi = global illumination

Light Propagation Volumes

Page 24: Gi = global illumination

Light Propagation Volumes

Page 25: Gi = global illumination

No propagation

Light Propagation Volumes

Page 26: Gi = global illumination

After 4 iterations

Light Propagation Volumes

Page 27: Gi = global illumination

After 6 iterations

Light Propagation Volumes

Page 28: Gi = global illumination

After 8 iterations

Light Propagation Volumes

Page 29: Gi = global illumination

Light Propagation Volumes

Page 30: Gi = global illumination

Light Propagation Volumes

Page 31: Gi = global illumination

Light Propagation Volumes

● Dynamic lights

● No indirect shadows

Light Propagation Volumes

Page 32: Gi = global illumination

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

Page 33: Gi = global illumination

Voxel Cone Tracing

Page 34: Gi = global illumination

Voxelization

Voxel Cone Tracing

Page 35: Gi = global illumination

Sparse Quad-tree

Voxel Cone Tracing

Page 36: Gi = global illumination

Sparse Voxel Octree

Voxel Cone Tracing

Page 37: Gi = global illumination

Voxel Cone Tracing

Page 38: Gi = global illumination

Light injection

Voxel Cone Tracing

Page 39: Gi = global illumination

Filtering up

Voxel Cone Tracing

Page 40: Gi = global illumination

Voxel Cone Tracing

Voxel Cone Tracing

Page 41: Gi = global illumination

Voxel Cone Tracing

Page 42: Gi = global illumination

Voxel Cone Tracing

Page 43: Gi = global illumination

37 ms 32 ms 14 min

Voxel Cone Tracing

Page 44: Gi = global illumination

● Dynamic lights & objects

● Shadow casting

● Huge amount of memory

Voxel Cone Tracing

Page 45: Gi = global illumination

Slideshare - https://www.slideshare.net/Sperasoft/

SpeakerDeck - https://speakerdeck.com/sperasoft

GitHub - http://github.com/sperasoft

Check out more knowledge sharing here:

Company site - http://www.sperasoft.com/

On Facebook - https://facebook.com/sperasoft

On Twitter - http://twitter.com/sperasoft

Learn more about Sperasoft: