Download presentation
Presentation is loading. Please wait.
Published byDominick Griffith Modified over 9 years ago
1
1 Implicit Visibility and Antiradiance for Interactive Global Illumination Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3 1 REVES/INRIA Sophia-Antipolis, 2 University of Erlangen, 3 MIT CSAIL Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3 1 REVES/INRIA Sophia-Antipolis, 2 University of Erlangen, 3 MIT CSAIL
2
2 Motivation global illumination important for realistic image synthesis interactivity is desirable visibility is expensive global illumination important for realistic image synthesis interactivity is desirable visibility is expensive direct illumination global illumination
3
3 Previous Work off-line vs. precomputed vs. real-time radiosity / finite element methods amount of transport: form factors computation involves visibility, most expensive part dynamic scenes make global updates necessary off-line vs. precomputed vs. real-time radiosity / finite element methods amount of transport: form factors computation involves visibility, most expensive part dynamic scenes make global updates necessary [Cohen88] [Sloan02 ] [Keller97]
4
4 Previous Work - negative light still using visibility incremental updates for dynamic radiosity [Chen90] complex data structures, “negative light” photon mapping (shadow photons) [Jensen95] alleviating visibility ambient occlusion [Bunnell05] “how to avoid explicit visibility” [Pellegrini99] purely theoretical discussion does not address directional discretization, iterative solutions still using visibility incremental updates for dynamic radiosity [Chen90] complex data structures, “negative light” photon mapping (shadow photons) [Jensen95] alleviating visibility ambient occlusion [Bunnell05] “how to avoid explicit visibility” [Pellegrini99] purely theoretical discussion does not address directional discretization, iterative solutions
5
5 BRDF geometry term incident radiance visibility function Light Transport rendering equation [Kajiya86]
6
6 Rendering Equation linear operators [Arvo94] global transport operator G computes incident radiance from other surfaces determines visibility linear operators [Arvo94] global transport operator G computes incident radiance from other surfaces determines visibility G G transport with occlusion transport with occlusion
7
7 Rendering Equation reflection operator K local operator, computes reflected radiance rendering equation reflection operator K local operator, computes reflected radiance rendering equation G G transport with occlusion transport with occlusion K K reflection radiance L emission E radiance L emission E
8
8 Goal: alleviate visibility computation replace G use operator U for unoccluded transport problem: excessive light transport solution: compensate with “negative light” replace G use operator U for unoccluded transport problem: excessive light transport solution: compensate with “negative light” U U transport without occlusion transport without occlusion generate negative light generate negative light
9
9 New operator additional local operator go-through operator J lets radiance pass through surface no change in direction or magnitude additional local operator go-through operator J lets radiance pass through surface no change in direction or magnitude U U transport without occlusion transport without occlusion K K reflection J J go-through operator go-through operator
10
10 From occluded to unoccluded transport L L GLGL GLGL JGL ULUL ULUL Antiradiance input occluded unoccluded radiance transport go-through operator J problem: extraneous UAUA UAUA negative light what we want what we can do cheaply what we can do cheaply what we need to remove what we need to remove
11
11 From occluded to unoccluded transport GLGL GLGL occluded transport ULUL ULUL unoccluded transport UAUA UAUA negative light = = - -
12
12 occluded and unoccluded transport antiradiance radiance occluded and unoccluded transport antiradiance radiance Antiradiance UAUA UAUA ULUL ULUL GLGL GLGL
13
13 B B Occluded vs. unoccluded transport GLGL GLGL A A ULUL ULUL C C antiradiance exchange from C to B antiradiance exchange from C to B GL : light is blocked at C, no transport A to B UL : transport A to B antiradiance generated at C
14
14 new rendering equation avoids explicit visibility new quantity antiradiance propagate new rendering equation avoids explicit visibility new quantity antiradiance propagate Recap U U transport without occlusion transport without occlusion K K reflection J J go-through operator go-through operator
15
15 Practical implementation finite element approach iterative strategies and convergence using the GPU implicit visibility makes is feasible finite element approach iterative strategies and convergence using the GPU implicit visibility makes is feasible
16
16 Finite Elements spatial and directional discretization hierarchical radiosity with clustering energy transport over links form factors: energy transport between two patches directional quantities: uniform discretization spatial and directional discretization hierarchical radiosity with clustering energy transport over links form factors: energy transport between two patches directional quantities: uniform discretization
17
17 Computation U U transport without occlusion transport without occlusion K K reflection J J go-through operator go-through operator
18
18 Computation U U transport without occlusion transport without occlusion global pass propagate energy hierarchical solver: links global pass propagate energy hierarchical solver: links
19
19 Computation K K reflection J J go-through operator go-through operator local pass transform incident energy into new exitant energy local pass transform incident energy into new exitant energy
20
20 Iterative Solution symmetric iteration
21
21 Symmetric Iteration 1 st iteration 2 nd iteration 3 rd iteration 4 th iteration 8 th iteration path tracing reference
22
22 Iterative Solution symmetric iteration shadows are one step behind fast convergence it can diverge in contrived scenes converged in all scenes tested symmetric iteration shadows are one step behind fast convergence it can diverge in contrived scenes converged in all scenes tested
23
23 Iterative Solution asymmetric iteration one step of radiance propagation multiple steps for antiradiance #iterations = depth complexity “emulate” one step of GL asymmetric iteration one step of radiance propagation multiple steps for antiradiance #iterations = depth complexity “emulate” one step of GL ULUL ULUL UAUA UAUA
24
24 Convergence office scene symmetric: faster in the beginning asymmetric: better >90 steps visually: 10 iterations suffice office scene symmetric: faster in the beginning asymmetric: better >90 steps visually: 10 iterations suffice
25
25 Data structures exitant energy incident energy emission+total reflection spatial and directional discretization simple 2D data structures textures/render targets on GPUs each table stores L and A K and J operate on separate hemispheres spatial and directional discretization simple 2D data structures textures/render targets on GPUs each table stores L and A K and J operate on separate hemispheres elements directions
26
26 Data structures (global pass) directions receiver patch receiver patch sender patch sender patch form factor form factor P P Q Q F PQ link table exitant energy incident energy emission+total reflection * * * * direction mask cheap, because no visibility cheap, because no visibility
27
27 store radiance and antiradiance for next iteration accumulate reflected radiance for display Data structures (local pass) exitant energy incident energy emission+total reflection K K J J new antiradiance new radiance apply local operators to incident energy of each patch
28
28 separate direct and indirect illumination initialize from environment maps evaluate direct light with shadow maps separate direct and indirect illumination initialize from environment maps evaluate direct light with shadow maps Results
29
29 Results glossy materials comparison to path tracing glossy materials comparison to path tracing GPU (11 fps) path tracing
30
30 Dynamic Scenes moving or deforming objects only update directly affected links optimal link hierarchy changes moving or deforming objects only update directly affected links optimal link hierarchy changes
31
31 meshing and linking excessive subdivision for dynamic scenes directional quantities memory accuracy, main approximation meshing and linking excessive subdivision for dynamic scenes directional quantities memory accuracy, main approximation Discussion
32
32 rendering equation with implicit visibility directional quantity antiradiance reorganized global illumination computation interactive updates moving objects, lights glossy surfaces rendering equation with implicit visibility directional quantity antiradiance reorganized global illumination computation interactive updates moving objects, lights glossy surfaces Conclusion
33
33 Thank you for your attention! Questions? Thank you for your attention! Questions? Acknowledgements: DFG (project “Interaktive Visualisierung Prozeduraler Modelle”) Marie-Curie Postdoctoral Fellowship “Scalable-GlobIllum” (MEIF-CT-2006-041306) Microsoft Research New Faculty Fellowship, Sloan Fellowship NSF CAREER award 0447561 Autodesk, A. Olivier, F. Firsching, P. Richard, P. Green Acknowledgements: DFG (project “Interaktive Visualisierung Prozeduraler Modelle”) Marie-Curie Postdoctoral Fellowship “Scalable-GlobIllum” (MEIF-CT-2006-041306) Microsoft Research New Faculty Fellowship, Sloan Fellowship NSF CAREER award 0447561 Autodesk, A. Olivier, F. Firsching, P. Richard, P. Green
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.