ScatterWatch: Subtle Notificationsvia Indirect Illumination Scattered in the Skin
Cascaded Light Propagation Volumes for Indirect Illumination
-
Upload
anika-morris -
Category
Documents
-
view
31 -
download
0
description
Transcript of Cascaded Light Propagation Volumes for Indirect Illumination
![Page 1: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/1.jpg)
Anton KaplanyanAnton Kaplanyan11 Carsten DachsbacherCarsten Dachsbacher22
11Crytek GmbH Crytek GmbH 22VISUS / University StuttgartVISUS / University Stuttgart
ACM SIGGRAPH Symposium on Interactive 3D Graphics and GamesACM SIGGRAPH Symposium on Interactive 3D Graphics and Games21 February, 2010, 21 February, 2010, WashingtonWashington, USA, USA
![Page 2: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/2.jpg)
Motivation
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 2
![Page 3: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/3.jpg)
Previous work
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 3
Irradiance volumes Greger et al. 1997
SH Irradiance VolumesTatarchuk 2004
PRT: Spherical HarmonicsSloan et al. 2004
Spherical proxies with SH ExponentiationZhong et al. 2007
Image-Space Photon MappingMcGuire and Luebke 2009
Multi-resolution Splatting Nichols and Wyman 2009
![Page 4: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/4.jpg)
Previous work, continued
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 4
Instant radiosityKeller 1997
Many-lights approachWalter et al. 2005Hasan et al. 2007Chevlak-Postavak et al. 2008
VPL visibilityLaine et al. 2007Ritschel et al. 2008
![Page 5: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/5.jpg)
Previous work, continued
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 5
Disk-based Color BleedingBunell 2005Christensen 2008
Finite Element: AntiradianceDachsbacher et al. 2007
MicrorenderingRitschel et al. 2010
All techniques above have one or more of the following limitations:•Precomputed or redundant data (problems with dynamic and/or editable scenes)•Not suitable for game production performance-wiseMost of dynamic techniques are without indirect visibility
![Page 6: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/6.jpg)
Previous work, lattice methods
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 6
Light Propagation Maps Fattal 2009
Lattice-Boltzmann Lighting Geist et al. 2004
Lattice-Based Volumetric GlobalIlluminationQiu et al. 2007
![Page 7: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/7.jpg)
Basic idea
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 7
![Page 8: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/8.jpg)
Basic idea
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 8
![Page 9: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/9.jpg)
Basic idea
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 9
![Page 10: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/10.jpg)
Propagation demo
![Page 11: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/11.jpg)
Overview
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 11
![Page 12: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/12.jpg)
Light Propagation Volumes
• Use many-lights approach to capture sources of indirect lighting
• Sample directly lit surfaces and initialize 3D grid
• Represent directional distribution with Spherical Harmonics– Inspired by SH Irradiance Volumes [Tatarchuk04]
• Iterative, local propagation: cell-to-cell
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 12
![Page 13: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/13.jpg)
Secondary Light Sources
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 13
![Page 14: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/14.jpg)
Secondary Light Sources
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 14
Reflective shadow mapsFlux NormalDepth
![Page 15: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/15.jpg)
Injection
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 15
![Page 16: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/16.jpg)
Pipeline
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 16
Reflective shadow maps Radiance volume gathering
VPL
VPL
VPL
Discretize initial VPL distribution by the regular grid and SH
A set of regularly sampled VPLs of the scene from light position
?
![Page 17: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/17.jpg)
Light injection into the volume• Every element of
Reflective Shadow Map is a secondary lights
• Render as a point primitive into 3D grid– Represent flux in Spherical
Harmonics• Accumulate all VPLs into the grid• The 3D grid is initialized with
initial reflected light in the endACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 17
n
![Page 18: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/18.jpg)
Light Propagation
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 18
![Page 19: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/19.jpg)
Pipeline
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 19
Reflective shadow maps Radiance volume gathering
VPL
VPL
VPL
Discretize initial VPL distribution by the regular grid and SH
Iterative propagation
Propagate light iteratively going from one cell to another
A set of regularly sampled VPLs of the scene from light position
![Page 20: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/20.jpg)
Iterative Light Propagation• Local cell-to-cell propagation
across the 3D grid– Iterate till the light travels through
the entire volume– Similar to SH Discrete Ordinate
Method (used for participating media illumination)
– Number of iterations depend on the resolution of the grid
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 20
![Page 21: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/21.jpg)
The propagation iteration• 6 axial directions of propagation• Use contour faces as a
propagation wave front• Integrate source
intensity by the solid angle to get incoming flux for the face f
![Page 22: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/22.jpg)
The propagation iteration• Use more than 6
directions– Only 6 direct neighbors– Compute light
propagation to eachface of neighbors’ cells
– 30 virtual directions – SHDOM: 27 neighbor
cells = 27 directions– good trade-off of
memory bandwidth vs “ray effect”• “Ray effect” - light propagates in a set of fictitious directions
4 directions of propagation
8 directions of propagation
![Page 23: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/23.jpg)
Reprojection• Acquire the incident flux through
the receiving face• Create a new point light in the
center of receiving cell– Oriented towards the face– Causing exactly the same flux as the face received
• Generate clamped cosine lobe in SH basis similar to injection stage
• Accumulate the resulting SH coefficients into the destination cell for next iteration
![Page 24: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/24.jpg)
Scene rendering
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 24
![Page 25: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/25.jpg)
Rendering
• Look-up grid with trilinear interpolation• Evaluate the irradiance with cosine lobe of
surface’s normal• Apply dampening factor – Compute directional derivative towards normal– Dampen based on derivative deviation from the
intensity distribution direction
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 25
![Page 26: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/26.jpg)
Results of indirect illumination
![Page 27: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/27.jpg)
Cascaded Light Propagation Volumes
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 27
• Motivation: memory and bandwidth cost is o(N^3) for increase of LPV grid– Impossible to support large scenes
• Idea: use multiple nested grids to refine resolution hierarchically– Do not consider small objects for
large sparse grids
• Transfer propagated lighting fromnested grid to the parent grid
• Illuminate scene similarly tocascaded shadow maps
• Reduces the number of iterations sufficient per cascade
![Page 28: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/28.jpg)
Cascaded Indirect Illumination
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 28
1 cascade1 cascade
3 cascades3 cascades
![Page 29: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/29.jpg)
Fuzzy Secondary Occlusion
• Introduce a “fuzzyblocking” between cells
• Use another grid for blocking• Occlusion is view-dependent• Projected size of an occluder
is a cosine lobe
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 29
blocker
![Page 30: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/30.jpg)
Fuzzy Secondary Occlusion
• Represent it as SH • Store into occlusion grid• Sample surfaces using
rasterization – Possibly multiple views
• Very similar to light injection
• Interpolate blockinglinearly in between cells
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 30
Camera view
Light view
Scene
![Page 31: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/31.jpg)
Fuzzy Secondary Occlusion
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington
W/o secondary occlusionW/o secondary occlusion
With secondary occlusionWith secondary occlusion
![Page 32: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/32.jpg)
Multiple Bounces• Idea: use information
from occlusion gridto compute multipleindirect reflections
• Reflect light duringeach propagationiteration
• Avoid self-illumination by injecting reflectedlight at safety-distance
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 32
![Page 33: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/33.jpg)
Glossy Reflections
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 33
• Idea: Compute incident light from reflection direction by marching through LPV grid
• Go few steps back in propagation time to reduce light smearing
• 4 cells is sufficient for moderately glossy objects
• Lookups into multiple cells prevent discontinuitiesin glossy reflections
![Page 34: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/34.jpg)
Indirect lighting in isotropic participating media
• Ray march through the LPV • Accumulate inscattered light• Limited to single-scattering • Step through the whole
grid along viewdirection – Back to front
accumulation
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 34
![Page 35: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/35.jpg)
Timings (Crytek Sponza)
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 35
Depends on scene complexity
Depends on image size (1280x720)
8 iterations
32^3 grid size
![Page 36: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/36.jpg)
Results
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 36
Reference, 42 minReference, 42 min LPV, 78 fps @GTX285LPV, 78 fps @GTX285
Reference PBRT, 45 minReference PBRT, 45 min LPV, 60 fps @GTX285LPV, 60 fps @GTX285
![Page 37: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/37.jpg)
Limitations of the method• Only diffuse inter-reflections• Sparse spatial and
low-frequency angular approximations– Light diffusion: light transport
smears in all directions– Spatial discretization: visible
for occlusion and very coarsegrids
• Incomplete information for secondary occlusionACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 37
![Page 38: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/38.jpg)
Conclusion• Full-dynamic: scene, view, lighting changes• Real-time: GPU- and consoles- friendly• Production-eligible (simple tweaking)• Highly scalable– proportionally to quality
• Stable, flicker-free• Supports complex geometry (e.g. foliage)
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 38
![Page 39: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/39.jpg)
Video
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 39
![Page 40: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/40.jpg)
THANK YOU FOR YOUR ATTENTION
See the paper for more details
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 40
We’d like to thank: Crytek and especially the CEO Cevat Yerli for giving us an opportunity to make this researchThe whole Crytek R&D department and artists for help providedMany people across the industry and research community for interesting discussions and provided feedbacks
![Page 41: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/41.jpg)
Backup slide: Small details
• Stability of the solution– RSM one-texel snapping– One-cell snapping for LPVs– Temporal SSAA with reprojection for RSM injection
• Self-illumination and light bleeding– Half-cell VPL shifting to normal direction during
RSM injection– Directional derivative in normal direction to
compute a dampening factor
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 41
![Page 42: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/42.jpg)
Backup slide: Console optimizations
• For both consoles– Store everything in signed QUVW8 format, [-1;1] with
scaling factor– Use h/w 3D textures and trilinear filtering
• Xbox 360– Unwrap RT vertically to avoid bank conflicts during
injection – Use API bug work-around to resolve into a 3D slice
• PlayStation 3– Use memory aliasing for render into 3D texture– Use 2x MSAA aliasing to reduce pixel work twice
ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games 2010, Washington 42
![Page 43: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/43.jpg)
Backup slide: Console optimizations II
• Render Reflective Shadow Map Usually 128 x 128 is ok
• Inject each pixel into unwrapped LPV with a swarm of points 16384 points in one DIP Use vertex texture fetch on X360 Use R2VB on PlayStation 3
• Multi-layered unwrapping to avoid bank conflicts during RSM injection on Xbox 360
• All together: 3,0 ms on X360/PS3
![Page 44: Cascaded Light Propagation Volumes for Indirect Illumination](https://reader038.fdocuments.net/reader038/viewer/2022103005/56812b1b550346895d8f0e17/html5/thumbnails/44.jpg)
Backup slide: Massive LightingRender sliced unwrapped light box
into LPV (spatial overdraw vs screen-space, maximum 1024x32 pixels)
Convert light’s radiant intensity into SHShadows are not supported
Coverage in unwrapped render target
Light in the Light Propagation Volume