Irradiance Gradients. Media & Occlusions

Similar documents
Improved Radiance Gradient Computation

CMSC427 Shading Intro. Credit: slides from Dr. Zwicker

Global Illumination The Game of Light Transport. Jian Huang

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

Path Tracing part 2. Steve Rotenberg CSE168: Rendering Algorithms UCSD, Spring 2017

Raytracing & Epsilon. Today. Last Time? Forward Ray Tracing. Does Ray Tracing Simulate Physics? Local Illumination

The Rendering Equation. Computer Graphics CMU /15-662

Progressive photon mapping can be interpreted as an estimator that constructs the full paths from camera to light by constantly connecting two fresh

Importance Sampling Spherical Harmonics

Recent Advances in Monte Carlo Offline Rendering

CS 563 Advanced Topics in Computer Graphics Irradiance Caching and Particle Tracing. by Stephen Kazmierczak

Point based global illumination is now a standard tool for film quality renderers. Since it started out as a real time technique it is only natural

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

- Volume Rendering -

Discussion. Smoothness of Indirect Lighting. History and Outline. Irradiance Calculation. Irradiance Caching. Advanced Computer Graphics (Spring 2013)

Simulating Smoke with an Octree Data Structure and Ray Marching

Biased Monte Carlo Ray Tracing:

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

The Rendering Equation. Computer Graphics CMU /15-662, Fall 2016

Global Illumination. Global Illumination. Direct Illumination vs. Global Illumination. Indirect Illumination. Soft Shadows.

Schedule. MIT Monte-Carlo Ray Tracing. Radiosity. Review of last week? Limitations of radiosity. Radiosity

- Volume Rendering -

MIT Monte-Carlo Ray Tracing. MIT EECS 6.837, Cutler and Durand 1

Advanced Computer Graphics CS 563: Screen Space GI Techniques: Real Time

Biased Monte Carlo Ray Tracing

The Rendering Equation & Monte Carlo Ray Tracing

Global Illumination. Global Illumination. Direct Illumination vs. Global Illumination. Indirect Illumination. Soft Shadows.

Global Illumination. CSCI 420 Computer Graphics Lecture 18. BRDFs Raytracing and Radiosity Subsurface Scattering Photon Mapping [Ch

Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Today. Participating media. Participating media. Rendering Algorithms: Participating Media and. Subsurface scattering

Global Illumination and Monte Carlo

Distribution Ray-Tracing. Programação 3D Simulação e Jogos

2/1/10. Outline. The Radiance Equation. Light: Flux Equilibrium. Light: Radiant Power. Light: Equation. Radiance. Jan Kautz

Final Project: Real-Time Global Illumination with Radiance Regression Functions

Advanced Graphics. Path Tracing and Photon Mapping Part 2. Path Tracing and Photon Mapping

Monte Carlo Ray Tracing. Computer Graphics CMU /15-662

Bioluminescence Chris Fontas & Forrest Browning

Lighting and Shading

Efficient Simulation of Light Transport in Scenes with Participating Media using Photon Maps

Global Illumination CS334. Daniel G. Aliaga Department of Computer Science Purdue University

MITOCW MIT6_172_F10_lec18_300k-mp4

A Frequency Analysis of Light Transport

Announcements. Written Assignment 2 out (due March 8) Computer Graphics

Monte-Carlo Ray Tracing. Antialiasing & integration. Global illumination. Why integration? Domains of integration. What else can we integrate?

A NEW APPROACH OF DENSITY ESTIMATION FOR GLOBAL ILLUMINATION

COMP 558 lecture 16 Nov. 8, 2010

Lecture 12: Photon Mapping. Biased Methods

A Brief Overview of. Global Illumination. Thomas Larsson, Afshin Ameri Mälardalen University

Global Illumination. Why Global Illumination. Pros/Cons and Applications. What s Global Illumination

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

To Do. Real-Time High Quality Rendering. Motivation for Lecture. Monte Carlo Path Tracing. Monte Carlo Path Tracing. Monte Carlo Path Tracing

Fundamentals of Stereo Vision Michael Bleyer LVA Stereo Vision

LightSlice: Matrix Slice Sampling for the Many-Lights Problem

Scalable many-light methods

Assignment 3: Path tracing

Philipp Slusallek Karol Myszkowski. Realistic Image Synthesis SS18 Instant Global Illumination

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Advanced Graphics. Global Illumination. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

Virtual Spherical Lights for Many-Light Rendering of Glossy Scenes

Distributed Ray Tracing

Volume Illumination. Visualisation Lecture 11. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

rendering equation computer graphics rendering equation 2009 fabio pellacini 1

Importance Sampling of Area Lights in Participating Media

Ambien Occlusion. Lighting: Ambient Light Sources. Lighting: Ambient Light Sources. Summary

Photon Mapping. Michael Doggett Department of Computer Science Lund university

Sampling, Aliasing, & Mipmaps

Monte Carlo Ray-tracing and Rendering

These are the annotated slides of the real time part of the Many Lights Rendering

Local vs. Global Illumination & Radiosity

EECS 487: Interactive Computer Graphics

Photon Mapping. Due: 3/24/05, 11:59 PM

A Survey of Modelling and Rendering of the Earth s Atmosphere

Illumination Algorithms

CSE 167: Lecture #7: Color and Shading. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

CS130 : Computer Graphics Lecture 8: Lighting and Shading. Tamar Shinar Computer Science & Engineering UC Riverside

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome!

Interactive Methods in Scientific Visualization

Shading. Brian Curless CSE 557 Autumn 2017

Today. Anti-aliasing Surface Parametrization Soft Shadows Global Illumination. Exercise 2. Path Tracing Radiosity

Rendering Light Reflection Models

CENG 477 Introduction to Computer Graphics. Ray Tracing: Shading

w Foley, Section16.1 Reading

I have a meeting with Peter Lee and Bob Cosgrove on Wednesday to discuss the future of the cluster. Computer Graphics

GAMES Webinar: Rendering Tutorial 2. Monte Carlo Methods. Shuang Zhao

Single Scattering in Refractive Media with Triangle Mesh Boundaries

An Approach to Point Based Approximate Color Bleeding With Volumes

Statistical Acceleration for Animated Global Illumination

Soft shadows. Steve Marschner Cornell University CS 569 Spring 2008, 21 February

This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you

Lecture 7 - Path Tracing

782 Schedule & Notes

Global Illumination and the Rendering Equation

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Shading Models. Welcome!

POINT-BASED COLOR BLEEDING WITH VOLUMES. A Thesis. Presented to. the Faculty of California Polytechnic State University.

Lecture 15: Shading-I. CITS3003 Graphics & Animation

Radiance. Pixels measure radiance. This pixel Measures radiance along this ray

Illumination & Shading: Part 1

Virtual Reality for Human Computer Interaction

Rendering: Reality. Eye acts as pinhole camera. Photons from light hit objects

University of Victoria CSC 305 Shading. Brian Wyvill 2016

Transcription:

Irradiance Gradients in the Presence of Media & Occlusions Wojciech Jarosz in collaboration with Matthias Zwicker and Henrik Wann Jensen University of California, San Diego June 23, 2008

Wojciech Jarosz 2007 2 * In this talk we are interested in rendering scenes such as this one, where there is a strong connection between lighting that arrives at surfaces and lighting within participating media such as dust in the air or smoke * In particular we are interested in efficiently computing the intricate indirect lighting arriving on the surfaces.

Previous Work (Ir)radiance Caching Methods Irradiance Caching - Ward et al. 88 Irradiance Gradients - Ward and Heckbert 92 Radiance Caching - Křivánek et al. 05 Volumetric Radiance Caching - Jarosz et al. 08 * There has been a vast amount of work on how to compute indirect illlumination, enough to fill a whole course. * A popular technique, which is most related to our work, is irradiance caching, which was originally developed in 1988, and has been subsequently improved. 3

Irradiance Caching Direct (sharp discontinuities) Indirect (low frequency) 4 Ward et al. 88 * The observation that ward made was that even though direct lighting may have sharp discontinuities, such as... * If we just look at indirect irradiance, by handling direct lighting separately, it tends to have a very smooth appearance.

Irradiance Caching 4621 samples 5 Ward et al. 88 * This makes it a perfect candidate for sparse sampling and interpolation. * Irradiance caching computes indirect irradiance only at a sparse set of locations in the scene, and tries to interpolate these values as often as possible in order to gain efficiency. * On average only about 1 out of every 50 pixels need to compute indirect lighting in this image

Previous Work (Ir)radiance Caching Methods Irradiance Caching - Ward et al. 88 Irradiance Gradients - Ward and Heckbert 92 Radiance Caching - Křivánek et al. 05 Volumetric Radiance Caching - Jarosz et al. 08 6

Interpolation Quality 7 Ward and Heckbert 92

Interpolation Quality Without Gradients With Gradients 7 Ward and Heckbert 92

Interpolation Quality Without Translational Gradients With Translational Gradients 8 Ward and Heckbert 92

Interpolation Quality Without Rotational Gradients With Rotational Gradients 9 Ward and Heckbert 92

Previous Work (Ir)radiance Caching Methods Irradiance Caching - Ward et al. 88 Irradiance Gradients - Ward and Heckbert 92 Radiance Caching - Křivánek et al. 05 Support caching on glossy surfaces Volumetric Radiance Caching - Jarosz et al. 08 10

Previous Work (Ir)radiance Caching Methods Irradiance Caching - Ward et al. 88 Irradiance Gradients - Ward and Heckbert 92 Radiance Caching - Křivánek et al. 05 Volumetric Radiance Caching - Jarosz et al. 08 Cache radiance within volume, compute radiance gradients. 11

Previous Work (Ir)radiance Caching Methods Irradiance Caching - Ward et al. 88 Irradiance Gradients - Ward and Heckbert 92 Radiance Caching - Křivánek et al. 05 Volumetric Radiance Caching - Jarosz et al. 08 -Do not take into account participating media 12 * The limitations of the first three methods is that they do not account for participating media. They assume all surfaces are in a vacuum. * This means we cannot effectively apply these gradient methods if the scene contains media

Previous Work (Ir)radiance Caching Methods Irradiance Caching - Ward et al. 88 Irradiance Gradients - Ward and Heckbert 92 Radiance Caching - Křivánek et al. 05 Volumetric Radiance Caching - Jarosz et al. 08 -Does not take into account occlusions 13 * On the other hand, our previous work computes gradients within participating media, and it is possible to trivially apply this to irradiance gradients by only integrating over the hemisphere, instead of the whole sphere. * However, the drawback of our previous approach is that it does not take into account occlusions which can lead to significant interpolation artifacts in regions with occlusion changes.

Goal Compute accurate gradients of irradiance on surfaces in the presence of participating media AND occlusions. Wojciech Jarosz 2007 14 * Our goal is to fill this gap in previous work and compute accurate gradients of irradiance on surfaces in the presence of participating media AND occlusions. * We are only interested in computing a translational gradient, since rotational gradients are not effected by participating media.

Participating Media No Media With media * To see why this is in fact an important problem which is not adequately handled by previous methods, lets consider the classic Cornell box both with and without media. 15

Participating Media No Media (indirect irradiance) With media (indirect irradiance) 16 * Irradiance caching with gradients can very effectively compute the indirect illumination if no media is present. * However, since the gradient formulation does not account for media, significant artifacts appear if we apply these gradient computations when media is present * The reason for this is that these scenes invalidate a major underlying assumption of irradiance gradients, which is, that surfaces are embedded within a vacuum.

Participating Media No Media (indirect irradiance) With media (indirect irradiance) 16 * Irradiance caching with gradients can very effectively compute the indirect illumination if no media is present. * However, since the gradient formulation does not account for media, significant artifacts appear if we apply these gradient computations when media is present * The reason for this is that these scenes invalidate a major underlying assumption of irradiance gradients, which is, that surfaces are embedded within a vacuum.

Participating Media Ward and Heckbert 16 * Irradiance caching with gradients can very effectively compute the indirect illumination if no media is present. * However, since the gradient formulation does not account for media, significant artifacts appear if we apply these gradient computations when media is present * The reason for this is that these scenes invalidate a major underlying assumption of irradiance gradients, which is, that surfaces are embedded within a vacuum.

Participating Media Our Gradients 17 * Using the techniques described in our paper, in the same amount of time, we are able to compute a much more accurate gradient which allows for higher quality interpolation. * A key thing to note here is that the actual cache point locations are identical between these two images, just the gradient computation is changed.

Participating Media Our Gradients 17 * Using the techniques described in our paper, in the same amount of time, we are able to compute a much more accurate gradient which allows for higher quality interpolation. * A key thing to note here is that the actual cache point locations are identical between these two images, just the gradient computation is changed.

Participating Media Ward and Heckbert Gradients 17 * Using the techniques described in our paper, in the same amount of time, we are able to compute a much more accurate gradient which allows for higher quality interpolation. * A key thing to note here is that the actual cache point locations are identical between these two images, just the gradient computation is changed.

Volume Rendering Equation camera (eye) light source medium object * In order to compute these gradients, we must first understand the behavior of light in the presence of media. 18

Volume Rendering Equation object x * The radiance, L, arriving at any location x along a ray can be expressed using the volume rendering equation. * but at a high-level the meaning is pretty simple. * In the presence of participating media, the radiance is the sum of two terms: 19

Volume Rendering Equation x T r (x x s ) L(x s, ) object x s surface radiance 20 * the right-hand term incorporates lighting arriving from a surface * before reaching the eye, this radiance must travel through the medium and so is attenuated by a transmission term

Volume Rendering Equation x T r (x x s ) L(x s, ) object x s surface radiance 20 * the right-hand term incorporates lighting arriving from a surface * before reaching the eye, this radiance must travel through the medium and so is attenuated by a transmission term

Volume Rendering Equation s object 0 x x s media radiance * the left-hand term integrates the scattering of light from the medium along the whole length of the ray 21

Volume Rendering Equation s object 0 x x s media radiance * the left-hand term integrates the scattering of light from the medium along the whole length of the ray 21

Volume Rendering Equation object x L i (x t, ) x t media radiance 22 * the main quantity that is integrated, Li, is inscattered radiance * This represents the amount of light that reaches some point in the volume (from any other location in the scene), and then subsequently scatterers towards the eye

Volume Rendering Equation object x L i (x t, ) x t T r (x x t ) s (x t ) media radiance 23 * as this scattered light travels towards the eye it is also dissipated by extinction through the medium * this computation is very expensive and there has been a lot of work on how to solve this problem efficiently

Contribution Compute translational gradients of irradiance in the presence of media 24

Contribution Compute translational gradients of irradiance in the presence of media Absorbing media Emissive/scattering media 25

Contribution Compute translational gradients of irradiance in the presence of media Absorbing media Emissive/scattering media Higher quality irradiance interpolation 26

Irradiance in Part. Med. * Irradiance is simply the integral of the cosine weighted radiance over the hemisphere * Since we decomposed the definition of radiance as radiance coming from surfaces and radiance coming from the media, we can perform the same decomposition on the hemispherical integral. 27

Irradiance in Part. Med. * Irradiance is simply the integral of the cosine weighted radiance over the hemisphere * Since we decomposed the definition of radiance as radiance coming from surfaces and radiance coming from the media, we can perform the same decomposition on the hemispherical integral. 27

Irradiance in Part. Med. * Irradiance is simply the integral of the cosine weighted radiance over the hemisphere * Since we decomposed the definition of radiance as radiance coming from surfaces and radiance coming from the media, we can perform the same decomposition on the hemispherical integral. 27

Irradiance in Part. Med. * Irradiance is simply the integral of the cosine weighted radiance over the hemisphere * Since we decomposed the definition of radiance as radiance coming from surfaces and radiance coming from the media, we can perform the same decomposition on the hemispherical integral. 27

Irradiance Gradient * Since the total irradiance is the sum of two terms, the total irradiance gradient is just the sum of two gradient terms. * The right hand term is the gradient due to surface irradiance and the left is the gradient due to media irradiance. * In the remainder of the talk I will describe how we compute the two irradiance values and their corresponding gradients. 28

Irradiance Gradient Gradient from Surfaces * Since the total irradiance is the sum of two terms, the total irradiance gradient is just the sum of two gradient terms. * The right hand term is the gradient due to surface irradiance and the left is the gradient due to media irradiance. * In the remainder of the talk I will describe how we compute the two irradiance values and their corresponding gradients. 28

Irradiance Gradient Gradient from Media Gradient from Surfaces * Since the total irradiance is the sum of two terms, the total irradiance gradient is just the sum of two gradient terms. * The right hand term is the gradient due to surface irradiance and the left is the gradient due to media irradiance. * In the remainder of the talk I will describe how we compute the two irradiance values and their corresponding gradients. 28

Irradiance From Surfaces 29 * Given the definition of the surface irradiance, we can estimate it by performing a stratified Monte Carlo integration. * This involves subdividing the hemisphere of directions into a number of strata, or cells, and sampling the radiance using a jittered sample within each cell. * The irradiance is just the sum of all the radiance samples weighted by their cell area and the cosine term. * This is exactly the approach used by standard irradiance caching techniques.

Irradiance From Surfaces 29 * Given the definition of the surface irradiance, we can estimate it by performing a stratified Monte Carlo integration. * This involves subdividing the hemisphere of directions into a number of strata, or cells, and sampling the radiance using a jittered sample within each cell. * The irradiance is just the sum of all the radiance samples weighted by their cell area and the cosine term. * This is exactly the approach used by standard irradiance caching techniques.

Irradiance From Surfaces 30

Irradiance From Surfaces 30

Irradiance Gradient From Surfaces 31 * We can compute the translational gradient of this estimate by using the product rule within the summation.

Irradiance Gradient From Surfaces 32

Irradiance Gradient From Surfaces 32

Irradiance Gradient From Surfaces * Computing the gradient therefore involves estimating how the cell areas change due to a translation * This term is what Ward and Heckbert derived * Our contribution is additionally taking into account a gradient of the cell radiance. 33

Irradiance Gradient From Surfaces gradient of cell area (Ward and Heckbert) * Computing the gradient therefore involves estimating how the cell areas change due to a translation * This term is what Ward and Heckbert derived * Our contribution is additionally taking into account a gradient of the cell radiance. 33

Irradiance Gradient From Surfaces gradient of cell area (Ward and Heckbert) gradient of cell radiance (our contribution) * Computing the gradient therefore involves estimating how the cell areas change due to a translation * This term is what Ward and Heckbert derived * Our contribution is additionally taking into account a gradient of the cell radiance. 33

* In participating media, the surface radiance is the product of two terms, so its gradient can be computed using the product rule. * We recently published a method at TOG which derives the necessary expressions for computing the gradient of the transmittance. * The gradient of cell radiance was ignored by all previous methods. This implies that all these methods (including radiance caching for glossy surfaces) assumed that all surfaces visible during final gather are Lambertian surfaces in a vacuum. * By incorporating this term we can not only account for participating media, but also get the added benefit of being able to handle glossy indirect reflectors. Gradient of Cell Radiance 34

* In participating media, the surface radiance is the product of two terms, so its gradient can be computed using the product rule. * We recently published a method at TOG which derives the necessary expressions for computing the gradient of the transmittance. * The gradient of cell radiance was ignored by all previous methods. This implies that all these methods (including radiance caching for glossy surfaces) assumed that all surfaces visible during final gather are Lambertian surfaces in a vacuum. * By incorporating this term we can not only account for participating media, but also get the added benefit of being able to handle glossy indirect reflectors. Gradient of Cell Radiance 34

* In participating media, the surface radiance is the product of two terms, so its gradient can be computed using the product rule. * We recently published a method at TOG which derives the necessary expressions for computing the gradient of the transmittance. * The gradient of cell radiance was ignored by all previous methods. This implies that all these methods (including radiance caching for glossy surfaces) assumed that all surfaces visible during final gather are Lambertian surfaces in a vacuum. * By incorporating this term we can not only account for participating media, but also get the added benefit of being able to handle glossy indirect reflectors. Gradient of Cell Radiance 34

* In participating media, the surface radiance is the product of two terms, so its gradient can be computed using the product rule. * We recently published a method at TOG which derives the necessary expressions for computing the gradient of the transmittance. * The gradient of cell radiance was ignored by all previous methods. This implies that all these methods (including radiance caching for glossy surfaces) assumed that all surfaces visible during final gather are Lambertian surfaces in a vacuum. * By incorporating this term we can not only account for participating media, but also get the added benefit of being able to handle glossy indirect reflectors. Gradient of Cell Radiance Attenuation due to media Jarosz et al. ACM TOG 08. 34

* In participating media, the surface radiance is the product of two terms, so its gradient can be computed using the product rule. * We recently published a method at TOG which derives the necessary expressions for computing the gradient of the transmittance. * The gradient of cell radiance was ignored by all previous methods. This implies that all these methods (including radiance caching for glossy surfaces) assumed that all surfaces visible during final gather are Lambertian surfaces in a vacuum. * By incorporating this term we can not only account for participating media, but also get the added benefit of being able to handle glossy indirect reflectors. Gradient of Cell Radiance Glossy indirect reflectors 34

Hemispherical Sampling * The way this derivation can be interpreted visually, is that we start with a hemispherical sampling around some point x 35

Hemispherical Sampling 36 * We now know the radiance coming from each cell, and the distance to the surface within each cell, which results in a discretization of the visible environment. * In order to compute the gradient of irradiance, we consider how the contribution from each cell will change as we move the point x along the tangent plane.

Hemispherical Sampling 36 * We now know the radiance coming from each cell, and the distance to the surface within each cell, which results in a discretization of the visible environment. * In order to compute the gradient of irradiance, we consider how the contribution from each cell will change as we move the point x along the tangent plane.

Surface Irradiance Gradient * Moving the point will result in the cell areas changing due to occlusions from neighboring surfaces (shown in grey). * Additionally, the radiance coming from each cell may change due to changes in extinction (shown in red). 37

Absorbing Medium y x 38 * To validate this gradient formulation we visualized the gradients within this simple synthetic scene, which contains a ground plane, an occluding block, and a polygon reflecting indirect light. The whole scene is embedded within an absorbing medium.

Absorbing Medium Irradiance on floor * We can visualize the irradiance on the ground plane. 39

Per-Pixel Irradiance Gradient (Finite Differences) * We can also compute a ground truth solution to the gradient by performing finite differences along the ground plane. * In these visualizations the absolute value of the x component of the gradient is shown in red and the y component is shown in blue. And we compute the gradient per-pixel * This unfortunately suffers from significant noise. 40

Per-Pixel Irradiance Gradient (Finite Differences 10X) * We can improve the quality by taking 10 times as many samples, and this starts to reveal the structure of the true gradient, however it is not a practical approach since it is very expensive 41

Per-Pixel Irradiance Gradient (Our Method) 42 * Using our approach, we can match the behavior of this gradient, with less noise, and using only 1/10th of the number of samples.

Per-Pixel Irradiance Gradient (Ward and Heckbert) * If we were to compute the gradient using the original Ward and Heckbert formulation, the results are significantly different than the finite difference gradients. 43

Gradient Comparison Our Method Ward and Heckbert Why is the Ward & Heckbert gradient darker? 44 * If we look at these side by side we can immediately see that the Ward and Heckbert version is darker. * For Ward & Heckbert, the radiance has an inverse squared falloff * In participating media, which our gradients take into account, the radiance has a sharper falloff since it is also attenuated by transmittance. * This leads to a higher gradient value.

Gradient Comparison Our Method Ward and Heckbert Why is the Ward & Heckbert gradient darker? 44 * If we look at these side by side we can immediately see that the Ward and Heckbert version is darker. * For Ward & Heckbert, the radiance has an inverse squared falloff * In participating media, which our gradients take into account, the radiance has a sharper falloff since it is also attenuated by transmittance. * This leads to a higher gradient value.

Gradient Comparison Gradient Magnitude 0.12 0.10 0.08 0.06 0.04 E - Finite Difference E - Our Method E - Ward and Heckbert 92 0.02 50 100 150 200 250 Pixel 45

Extrapolated Irradiance Our Method Ward and Heckbert Same cache points 46

Visual Break This is frame 352 from the Patterson film taken on October 20, 1967. It is the most famous picture of bigfoot ever taken. 47

Irradiance From Media 48

Irradiance From Media where: 48

Ray Marching 49

Ray Marching object x 49

Irradiance From Media where: 50

Irradiance From Media where: - Does not have an associated distance 50

Irradiance From Media where: - Does not have an associated distance - Cannot use the same gradient formulation 50

Hemispherical Sampling * I ll describe the process of computing the media irradiance gradient at a high level using this 2D example * the details of this process are in the paper. 51

Ray Marching * An individual cell in this case samples the medium at multiple steps using ray marching. 52

Ray Marching * An individual cell in this case samples the medium at multiple steps using ray marching. 52

Ray Marching Medium radiance interpreted as coming from shells * In order to compute the contribution to the gradient for each cell, we interpret these samples as radiance come from multiple shells of different radius 53

Ray Marching shells Medium radiance interpreted as coming from shells * In order to compute the contribution to the gradient for each cell, we interpret these samples as radiance come from multiple shells of different radius 53

Ray Marching surfaces surfaces 54 * We also want to handle occlusions from neighboring surfaces, like in the Ward and Heckbert formulation

* To compute the gradient contribution of each cell, we determine how each shell may be occluded by surfaces. * The rate of occlusion depends on the distance to the shell, and the distance to the neighboring surface causing the occlusion (shown in blue) * This means that shells in front of neighboring surfaces do not get occluded with translation, and shells past surfaces get occluded faster with increased distance. * The media irradiance gradient can be thought of as applying the Ward and Heckbert gradient formulation to estimate the change in occlusion individually for each of these shells of increasing radius. Media Irradiance Gradient Each shell is occluded by surfaces at a different rate as we move x. 55

* To compute the gradient contribution of each cell, we determine how each shell may be occluded by surfaces. * The rate of occlusion depends on the distance to the shell, and the distance to the neighboring surface causing the occlusion (shown in blue) * This means that shells in front of neighboring surfaces do not get occluded with translation, and shells past surfaces get occluded faster with increased distance. * The media irradiance gradient can be thought of as applying the Ward and Heckbert gradient formulation to estimate the change in occlusion individually for each of these shells of increasing radius. Media Irradiance Gradient Each shell is occluded by surfaces at a different rate as we move x. Shells do not occlude each other Determined by distance to shell and to occluder. 55

Scattering Medium y x 56 * Using a modification of the previous scene, we can validate the correctness of our media irradiance gradients. * In this case, we use a scattering media, and a point light source. * The scene is constructed in a way where all lighting on the ground plane has first scattered within the medium.

Per-Pixel Irradiance Gradient (Finite Differences 10X) * We compute a ground truth gradient using finite differences * Even with a very large number of samples the finite difference gradient suffers from significant noise 57

Per-Pixel Irradiance Gradient (Our Method) 58 * The gradients estimated using our method match the behavior of the true gradient but have significantly less noise using only 1/10th of the number of samples

Per-Pixel Irradiance Gradient (Ward and Heckbert) * The Ward and Heckbert gradient formulation again significantly differs from the true gradient since it does not take into account media scattering. 59

Per-Pixel Irradiance Gradient Our Method Ward and Heckbert Why is the Ward & Heckbert gradient darker? 60 * In addition to having a different structure, it is also overall darker. * This is because for Ward & Heckbert, all radiance is assumed to come from the surface past the medium. * and since the gradient is inversely proportional to the distance, this underestimates the gradient. * By comparing the gradients along a single scanline

Per-Pixel Irradiance Gradient Our Method Ward and Heckbert Why is the Ward & Heckbert gradient darker? 60 * In addition to having a different structure, it is also overall darker. * This is because for Ward & Heckbert, all radiance is assumed to come from the surface past the medium. * and since the gradient is inversely proportional to the distance, this underestimates the gradient. * By comparing the gradients along a single scanline

Gradient Comparison 0.07 0.06 E - Finite Difference E - Our Method E - Ward and Heckbert 92 Gradient Magnitude 0.05 0.04 0.03 0.02 0.01 0 0 50 100 150 200 250 Pixel * we see that our method (shown in blue) matches the ground truth, whereas Ward and Heckbert gradients (shown in red) significantly differ from this 61

Extrapolated Irradiance Our Method Ward and Heckbert Same cache points 62

Gradient Comparison In a scene with no walls, Ward & Heckbert would estimate 0 gradients! y x y x * This test scene is actually constructed to give the original Ward & Heckbert gradient a helping hand. * If we removed the box and the walls then Ward & Heckbert s formulation would incorrectly estimate a 0 gradient everywhere, which would be of no benefit for interpolation. 63

Convergence 1.0 Irradiance Gradient Magnitude Convergence 0.8 Relative Error 0.6 0.4 0.2 E - Our Method E - Ward and Heckbert 92 0.0 1 16 32 48 64 Number of Samples 64

Results Rendered at 1K horizontal resolution On an Intel Core 2 Duo 2.4 GHz PC 65

Smoky Cornell Box (8:14) 66

Smoky Cornell Box Our Method (8:14) Ward and Heckbert (8:10) 67

Beam through Window Our Method (3:25) Ward and Heckbert (3:17) * still based on stochastic sampling, so there may still be errors (e.g., on the floor), not as bad as previous methods 68

Disco Ball (10:33) * All illumination on the ground plane has first scattered in the medium. 69

Disco Ball Our Method (10:33) Ward and Heckbert (10:30) 70

Future Work Error metric 71

Future Work Error metric Radiance gradients 71

Future Work Error metric Radiance gradients Radiance gradients in participating media 71

Conclusion Accurate irradiance gradients for scenes with media and occlusions Can be applied to the irradiance caching algorithm for higher quality interpolation 72

Thank You 73