Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Implicit Visibility and Antiradiance for Interactive Global Illumination Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3.

Similar presentations


Presentation on theme: "1 Implicit Visibility and Antiradiance for Interactive Global Illumination Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3."— Presentation transcript:

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


Download ppt "1 Implicit Visibility and Antiradiance for Interactive Global Illumination Carsten Dachsbacher 1, Marc Stamminger 2, George Drettakis 1, Frédo Durand 3."

Similar presentations


Ads by Google