Virtual Spherical Lights for Many-Light Rendering of Glossy Scenes

Slides:



Advertisements
Similar presentations
The Radiance Equation.
Advertisements

Miloš Hašan Jaroslav Křivánek Philipp Slusallek Kavita Bala Combining Global and Local Virtual Lights for Detailed Glossy Illumination Tomáš Davidovič.
Bidirectional Photon Mapping Jiří Vorba Charles University in Prague Faculty of Mathematics and Physics 1.
Computer graphics & visualization Global Illumination Effects.
Many-light methods – Clamping & compensation
Advanced Computer Graphics
The Radiance Equation Mel Slater. Outline Introduction Light Simplifying Assumptions Radiance Reflectance The Radiance Equation Traditional Rendering.
Paper Presentation - An Efficient GPU-based Approach for Interactive Global Illumination- Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao Presenter.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lectures 18, 19: Monte Carlo Integration Ravi Ramamoorthi Acknowledgements.
CSCE 641: Photon Mapping Jinxiang Chai. Outline Rendering equation Photon mapping.
Photon Tracing with Arbitrary Materials Patrick Yau.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 10: Global Illumination Ravi Ramamoorthi Some images courtesy.
Global Illumination May 7, Global Effects translucent surface shadow multiple reflection.
Matrix Row-Column Sampling for the Many-Light Problem Miloš Hašan (Cornell University) Fabio Pellacini (Dartmouth College) Kavita Bala (Cornell University)
Computer Graphics (Fall 2004) COMS 4160, Lecture 16: Illumination and Shading 2 Lecture includes number of slides from.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 21: Radiosity
Computer Graphics (Spring 2008) COMS 4160, Lecture 22: Global Illumination
Selected Topics in Global Illumination Computation Jaroslav Křivánek Charles University, Prague
-Global Illumination Techniques
02/16/05© 2005 University of Wisconsin Last Time Re-using paths –Irradiance Caching –Photon Mapping.
Parallel MDOM for Rendering Participating Media Ajit Hakke Patil – Daniele Bernabei Charly Collin – Ke Chen – Sumanta Pattanaik Fabio Ganovelli.
Improved VPL Distribution Jaroslav Křivánek Charles University in Prague (Optimizing) Realistic Rendering with Many-Light Methods (part of the “Handling.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
111/17/ :21 Graphics II Global Rendering and Radiosity Session 9.
Global Illumination: Radiosity, Photon Mapping & Path Tracing Rama Hoetzlein, 2009 Lecture Notes Cornell University.
Differential Instant Radiosity for Mixed Reality Martin Knecht, Christoph Traxler, Oliver Mattausch, Werner Purgathofer, Michael Wimmer Institute of Computer.
1 Temporal Radiance Caching P. Gautron K. Bouatouch S. Pattanaik.
Monte-Carlo Ray Tracing and
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Hybrid Algorithms K. H. Ko School of Mechatronics Gwangju Institute.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
Handling Difficult Light Paths (virtual spherical lights) Miloš Hašan UC Berkeley Realistic Rendering with Many-Light Methods.
02/12/03© 2003 University of Wisconsin Last Time Intro to Monte-Carlo methods Probability.
Bidirectional Path Sampling Techniques
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Stochastic Path Tracing Algorithms K. H. Ko School of Mechatronics Gwangju.
Slide 1Lastra, 2/14/2016 Monte-Carlo Methods. Slide 2Lastra, 2/14/2016 Topics Kajiya’s paper –Showed that existing rendering methods are approximations.
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
Radiance Cache Splatting: A GPU-Friendly Global Illumination Algorithm P. Gautron J. Křivánek K. Bouatouch S. Pattanaik.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Distributed Ray Tracing. Can you get this with ray tracing?
Computer graphics III – Multiple Importance Sampling Jaroslav Křivánek, MFF UK
Toward Real-Time Global Illumination. Project Ideas Distributed ray tracing Extension of the radiosity assignment Translucency (subsurface scattering)
Computer graphics III – Rendering equation and its solution
Miloš Hašan UC Berkeley Jaroslav Křivánek Charles University in Prague (Optimizing) Realistic Rendering with Many-Light Methods An ACM SIGGRAPH 2012 course.
Advanced Computer Graphics
Advanced Computer Graphics
Shading Revisited Some applications are intended to produce pictures that look photorealistic, or close to it The image should look like a photograph A.
Sampling and Reconstruction of Visual Appearance
Ray Tracing via Markov Chain Monte-Carlo Method
The Rendering Equation
© 2005 University of Wisconsin
(c) 2002 University of Wisconsin
Simple and Robust Iterative Importance Sampling of Virtual Point Lights Iliyan Georgiev Philipp Slusallek.
Path Tracing (some material from University of Wisconsin)
Incremental Instant Radiosity for Real-Time Indirect Illumination
CSCE 441 Computer Graphics: Radiosity
(c) 2002 University of Wisconsin
Efficient Importance Sampling Techniques for the Photon Map
Progressive Photon Mapping Toshiya Hachisuka Henrik Wann Jensen
Metropolis Light Transport for Participating Media
CS5500 Computer Graphics May 29, 2006
Foundations of Computer Graphics (Spring 2012)
Radiosity Sung-Eui Yoon (윤성의) CS580: Course URL:
Smoother Subsurface Scattering
CS 480/680 Computer Graphics Shading.
(Optimizing) Realistic Rendering with Many-Light Methods
Distributed Ray Tracing
Monte Carlo Path Tracing and Caching Illumination
Path Space Regularization for Robust and Holistic Light Transport
Real-time Global Illumination with precomputed probe
Photon Density Estimation using Multiple Importance Sampling
Presentation transcript:

Virtual Spherical Lights for Many-Light Rendering of Glossy Scenes Miloš Hašan Jaroslav Křivánek * Bruce Walter Kavita Bala Cornell University * Charles University in Prague

Global Illumination Effects Soft shadows Color bleeding Caustics We’re dealing with a long standing problem of CG: computing global illumination efficiently. Depending on the scene properties, GI produces different illumination effects but we’re specifically focusing on light inter-reflections on glossy surfaces. Monte Caro methods, such as PT, are general enough to handle all these effects, but can take long time to converge, especially in the scenes that we’re focusing on. Mirror reflection Refraction Glossy inter-reflection Monte Carlo can handle them all… but is very slow

Faster algorithms exist… Soft shadows Color bleeding Caustics Some fast specialized algorithms exist but there is no satisfying solution for glossy inter-reflections. Mirror reflection Refraction Glossy inter-reflection But no satisfying solution for glossy inter-reflection

Glossy Inter-reflections This is the kind of images that we would like to render. Indeed, their appearance is completely dominated by glossy inter-reflections.

Previous Work Unbiased methods Biased methods (Bidirectional) Path tracing [Kajiya 1985, Lafortune et al. 1993] Metropolis Light Transport [Veach and Guibas 1997] Biased methods Photon Mapping [Jensen 2001] Radiance caching [Křivánek 2005] Unbiased GI methods converge slowly since they have hard times finding important paths when dealing with glossy scenes. Photon mapping is the most well known example of an biased GI method. However, it does not perform very well in glossy scene either: huge number of photons is required and final gathering is a bottleneck. Final gathering can be accelerated with interpolation-based approaches such as radiance caching, but their assumptions about illumination smoothness is often invalid.

Previous Work – Instant Radiosity Virtual Point Lights (VPLs) Very efficient in mostly diffuse scenes Real-time global illumination [Wald et al. 2002, Segovia et al. 2006, 2007, Laine et al. 2007, Ritschel et al. 2008, Dong et al. 2009] Scalability to many lights [Walter et al. 2005, 2006, Hašan et al. 2007] Instant radiosity is a GI method that has gained a lot of attention recently. The idea is to convert all the illumination into a set of VPLs. Since only a few VPLs are sufficient to get a believable approximation of GI, this algorithm has been the basis of many recent real-time GI methods. On the other hand, with many VPLs, instant radiosity can produce very high quality images – that’s why some work has addressed the problem of scalability with many lights. Due to it’s efficiency, we chose IR as the basis of our approach to the glossy inter-reflection problem.

Limitations of Instant Radiosity So far: Instant radiosity & Glossy inter-reflections However, it has been a common knowledge that instant radiosity does not work well in glossy scenes. The reason is that in order to prevent image artifacts, instant radiosity completely ignores some complex parts of light transport, which results in serious illumination loss on glossy surfaces, as you can see on the range hood or the counter. Instant radiosity: illumination loss Reference

Previous Work on Compensation Compute the missing components by path tracing [Kollig and Keller 2004] Glossy scenes As slow as path-tracing everything The illumination loss problem hasn’t been extensively discussed in previous work with the exception of the paper by Kollig and Keller, who propose to compensate for the missing energy by path tracing. Unfortunately, in glossy scenes, their compensation methods is nearly as expensive as path tracing the entire image. Path traced compensation: 3.5 hours Reference

Our Method New type of light: Virtual Spherical Light Our idea, on the other hand, is to prevent the illumination loss in the first place, rather than trying t compensate for it. We achieve this by introducing a new type of light, the VSL, that overcomes some of the problems of VPLs. With this new type of light, we are able to render images very similar to the reference yet in much shorter time. Our method: 4 minutes Reference

Outline Problems with Virtual Point Lights (VPLs) Our solution: Virtual Spherical Lights (VSLs) Implementation Results

Outline Problems with Virtual Point Lights (VPLs) Our solution: Virtual Spherical Lights (VSLs) Implementation Results

Instant Radiosity STEP 1 Trace paths from the light

Instant Radiosity STEP 1 Trace paths from the light Treat path vertices as Virtual Point Lights (VPLs)

Instant Radiosity STEP 1 STEP 2 Trace paths from the light Treat path vertices as Virtual Point Lights (VPLs) STEP 2 Render scene with VPLs

Emission Distribution of a VPL Cosine-weighted BRDF lobe at the VPL location Glossy Diffuse

Glossy VPL Emission: Illumination Spikes If you render the scene with VPLs defined this way your will get an image with a lot of splotches. Each splotch corresponds to the spike in the emission distribution of a single VPL. For example, the streak on the ceiling is caused by a VPL located on a highly anisotropic glossy surface. The common solution in instant radiosity is to ignore the glossy component of the BRDF at the light location which produces VPLs with very uniform emission distribution. Common solution: Only diffuse BRDF at light location

Remaining Spikes

Remaining Spikes VPL contribution = VPL power . BRDF(x) . cos(x) . 1 / || p – x ||2 As || p – x || → 0, VSL contribution → ∞ p spike! x x Common solution: Clamp VPL contributions

Instant Radiosity: The Practical Version Clamping and diffuse-only VPLs: Illumination is lost!

Comparison Clamped VPLs: Illumination loss Path tracing: Slow

Outline Problems with Virtual Point Lights (VPLs) Our solution: Virtual Spherical Lights (VSLs) Implementation Results

Motivation VPLs: image splotches due to Idea Spikes in the VPL emission distibution 1 / || p – x || term Idea Spread VPL energy over a finite surface Compute contribution as solid angle integral

VPL to VSL Ω p l x Non-zero radius (r) Integration over non-zero solid angle Non-zero radius (r) p l More specifically, we well spread the light energy over the surfaces inside the sphere of radius r centered at the light position p. And the contribution of the light will be computed as an integral over the solid angle subtended by the sphere. x

Light Contribution Ω p y l x Non-zero radius (r) Integration over non-zero solid angle Non-zero radius (r) p y l Let’s write down the formula for the contribution of such a light to the surface point x. We have the integration over the solid angle. The integrand is a product of the following terms: the cosine weighted BRDF at the surface, next, the BRDF at the point y n the vicinity of the light location. Finally, we have an indicator term that is zero for all the directions that correspond to surface point y outside the sphere. We normalize the integration by the expected surface area inside the sphere, pi*r^2, and multiply by the light flux. To avoid this indicator term, we could define the light contribution as an integral over a disk area. Unfortunately, doing that re-introduces the infamous 1/dist^2 term and produces bad results (we tried it). x

Problem: Finding y requires ray-tracing Light Contribution Ω Integration over non-zero solid angle Non-zero radius (r) p y l Problem: Finding y requires ray-tracing Unfortunately, this formulation requires finding the point y for all directions l inside the cone, which required ray tracing. This is clearly not feasible. x

Simplifying Assumptions Ω Integration over non-zero solid angle Non-zero radius (r) p y Constant in Ω: Visibility Surface normal Light BRDF l To produce a computationally convenient approximation to the previous formula, we make the following simplifying assumptions. We assume that the visibility, the surface normal and the BRDF are constant inside the sphere. And we take them from the light location p. x Taken from p, the light location

Light Contribution Updated Ω Integration over non-zero solid angle Non-zero radius (r) p l With these assumptions, we can write a formula for the contribution of a VSL: x

Virtual Spherical Light All inputs taken from x and p Local computation Same interface as any other light Can be implemented in a GPU shader Visibility factored from the integration Can use shadow maps

Outline Problems with Virtual Point Lights (VPLs) Our solution: Virtual Spherical Lights (VSLs) Implementation Results

Computing the VSL integral Monte Carlo quadrature Cone sampling BRDF 1 sampling BRDF 2 sampling Combined sampling

Implementation Matrix row-column sampling [Hašan et al. 2007] Shadow mapping for visibility VSL integral evaluated in a GPU shader Need more lights than in diffuse scenes VSL radius proportional to local VSL density determined by k-NN queries

Outline Problems with Virtual Point Lights (VPLs) Our solution: Virtual Spherical Lights (VSLs) Implementation Results

Results: Kitchen Most of the scene lit indirectly Many materials glossy and anisotropic Path tracing: 316 hours (8 cores) Clamped VPLs 34 sec (GPU) – 2000 lights New VSLs: 4 min 4 sec (GPU) – 10000 lights

Results: Disney Concert Hall Curved walls with no diffuse component Standard VPLs cannot capture any reflection from walls Path tracing: 30 hours (8 cores) Clamped VPLs: 22 sec (GPU) – 4000 lights New VSLs: 1 min 26 sec (GPU) – 15000 lights

Results: Anisotropic Tableau Difficult case Standard VPLs capture almost no indirect illumination Path tracing: 2.2 hours (8 cores) Clamped VPLs: 32 sec (GPU) – 1000 lights New VSLs: 1 min 44 sec (GPU) – 5000 lights

Error Images (Indirect Only) VPL error (previous work) VSL error (our method) Ground truth

Limitations: Blurring VSLs can blur illumination Converges as number of lights increases 5,000 lights - blurred 1,000,000 lights - converged

Other Limitations Some remaining corner darkening Computation overhead

Conclusion Virtual Spherical Lights Many-light methods + VSLs: No spikes, no clamping necessary Address illumination loss Many-light methods + VSLs: A step to solve the glossy inter-reflection problem Future Work More lights: improve scalability

The Problem, Numerically Recall: Integration over paths, use Monte Carlo The contribution f(xi) contains: Inverse distance-squared term Material term at surface location Material term at VPL location What if f(xi) becomes locally large? “Spikes”

The Problem Revision Path tracer Instant radiosity Difference image

Another Example Path tracer Instant radiosity Difference image

The Missing Components Missing due to clamping Missing due to diffuse VPLs Missing energy