Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and...

22
Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin

Transcript of Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and...

Page 1: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Dynamic Global Illumination from many Lights

GDC 2012by Wolfgang Engel, Igor Lobanchikov and Timothy Martin

Page 2: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Confetti• Think-Tank for game and movie related industries• Middleware Provider

– Aura – Dynamic Global Illumination System– PixelPuzzle – PostFX pipeline– Ephemeris – Dynamic Skydome system

-> License comes with full source-code• Services:

– Hardware vendors– many game developers (“Engine Tuner”)

• Provides software solutions for games, movies and tools for GPU manufacturers

• http://www.conffx.com

Page 3: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

MotivationWhat we are going to show• … is a Dynamic GI system that

– works on static and dynamic objects like animated characters– does not require any pre-processed data

-> game objects are destructible, 24 hour cycle is possible, artist iteration time == real-time

– works on a large number of lights-> many point lights

• Volume calculations run on GPU or CPU-> load balancing if you have multi-core CPU -> works faster on CPU with 4+ core machines -> reduced GPU workload

• Target Platform: Intel Ivy Bridge

Page 4: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 5: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 6: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 7: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 8: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 9: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 10: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 11: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 12: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 13: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 14: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 15: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.
Page 16: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Demo Movies• Go to • http://www.conffx.com• There are three movies at the bottom of the

page

Page 17: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Features• Fully dynamic • Works on everything including dynamic

objects like characters• Allows fully destructible environment

Page 18: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Features• Memory consumption– Non-moving objects (static) CRSM:

== 16x16 on each cube face (overall 15 kB per light; probably GPU allocates more in the moment)

– Moving objects (dynamic) CRSM: == 64x64 on each cube face (overall 240 kB)

Page 19: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Features• Memory consumption• Caching of static Cube Reflective Shadow

maps-> 100 points lights ~ 1.2 Mb

Page 20: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Features• Performance Characteristics– Very cheap to render into Cube Reflective Shadow

maps– Volume calculations on the GPU are expensive

-> can be moved to the CPU

Page 21: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Features• Performance Characteristics

-> super scalable• Scale size of Cube Reflective Shadow maps• Scale size of Volume Textures

-> while running on the CPU• We do this for rendering movie / TV shows in

game engines

Page 22: Dynamic Global Illumination from many Lights GDC 2012 by Wolfgang Engel, Igor Lobanchikov and Timothy Martin.

Thank you

Acknowledgements•We would like to thank Carsten Dachsbacher and Anton Kaplanyan for discussions and support•The whole team that worked on RawK III, RawK II and the first RawK (check out the credits)

[email protected]