Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Georgios (George) Papaioannou Dept. of Computer Science Athens University of Economics.

Slides:



Advertisements
Similar presentations
Exploration of advanced lighting and shading techniques
Advertisements

Computer graphics & visualization Global Illumination Effects.
Real-Time Rendering Self-Shadowing
Computer Graphics In4/MSc Computer Graphics Lecture Notes #15 Illumination III View Independent Rendering.
Week 9 - Monday.  What did we talk about last time?  BRDFs  Texture mapping and bump mapping in shaders.
Zhao Dong 1, Jan Kautz 2, Christian Theobalt 3 Hans-Peter Seidel 1 Interactive Global Illumination Using Implicit Visibility 1 MPI Informatik Germany 2.
Ray Tracing CMSC 635. Basic idea How many intersections?  Pixels  ~10 3 to ~10 7  Rays per Pixel  1 to ~10  Primitives  ~10 to ~10 7  Every ray.
Chunhui Yao 1 Bin Wang 1 Bin Chan 2 Junhai Yong 1 Jean-Claude Paul 3,1 1 Tsinghua University, China 2 The University of Hong Kong, China 3 INRIA, France.
Photon Mapping. How did I use it 10 years ago? Why might you want to use it tomorrow?
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
Photorealistic Rendering. Ray tracing v. photorealistic rendering What illumination effects are not captured by ray tracing? What illumination effects.
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
Week 9 - Wednesday.  What did we talk about last time?  Fresnel reflection  Snell's Law  Microgeometry effects  Implementing BRDFs  Image based.
Computer graphics & visualization Pre-Computed Radiance Transfer PRT.
Real-Time Rendering Paper Presentation Imperfect Shadow Maps for Efficient Computation of Indirect Illumination T. Ritschel T. Grosch M. H. Kim H.-P. Seidel.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lectures 18, 19: Monte Carlo Integration Ravi Ramamoorthi Acknowledgements.
Photon Tracing with Arbitrary Materials Patrick Yau.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 21: Image-Based Rendering Ravi Ramamoorthi
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 10: Global Illumination Ravi Ramamoorthi Some images courtesy.
Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL An Incremental Weighted Least Squares Approach To Surface Light Fields Greg Coombe Anselmo Lastra.
Fast Global-Illumination on Dynamic Height Fields
Paper by Alexander Keller
Computer Graphics (Spring 2008) COMS 4160, Lecture 22: Global Illumination
Introduction | Crepuscular rays and Caustics Caustics are high intensity highlights due to convergence of light via different paths Crepuscular rays (godrays)
The Story So Far The algorithms presented so far exploit: –Sparse sets of images (some data may not be available) –User help with correspondences (time.
Computer Graphics Inf4/MSc Computer Graphics Lecture 11 Texture Mapping.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Efficient Irradiance Normal Mapping Ralf Habel, Michael Wimmer Institute of Computer Graphics and Algorithms Vienna University of Technology.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Jonathan M Chye Technical Supervisor : Mr Matthew Bett 2010.
-Global Illumination Techniques
REAL-TIME VOLUME GRAPHICS Christof Rezk Salama Computer Graphics and Multimedia Group, University of Siegen, Germany Eurographics 2006 Real-Time Volume.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
03/24/03© 2003 University of Wisconsin Last Time Image Based Rendering from Sparse Data.
Computer Graphics Global Illumination: Photon Mapping, Participating Media Lecture 12 Taku Komura.
Global Illumination with a Virtual Light Field Mel Slater Jesper Mortensen Pankaj Khanna Insu Yu Dept of Computer Science University College London
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
Real-time Shading with Filtered Importance Sampling Jaroslav Křivánek Czech Technical University in Prague Mark Colbert University of Central Florida.
1 Photon-driven Irradiance Cache J. BrouillatP. GautronK. Bouatouch INRIA RennesUniversity of Rennes1.
Advanced Computer Graphics Advanced Shaders CO2409 Computer Graphics Week 16.
Advanced Computer Graphics Shadow Techniques CO2409 Computer Graphics Week 20.
SIGGRAPH 2010 Course: Physically Based Shading Models in Film and Game Production SIGGRAPH 2010 Physically Based Shading Models in Film and Game Production.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Emerging Technologies for Games Deferred Rendering CO3303 Week 22.
Differential Instant Radiosity for Mixed Reality Martin Knecht, Christoph Traxler, Oliver Mattausch, Werner Purgathofer, Michael Wimmer Institute of Computer.
Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
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.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
02/12/03© 2003 University of Wisconsin Last Time Intro to Monte-Carlo methods Probability.
Real-Time Relief Mapping on Arbitrary Polygonal Surfaces Fabio Policarpo Manuel M. Oliveira Joao L. D. Comba.
Bounding Volume Hierarchy. The space within the scene is divided into a grid. When a ray travels through a scene, it only passes a few boxes within the.
Global Illumination (3) Photon Mapping (1). Overview Light Transport Notation Path Tracing Photon Mapping –Photon Tracing –The Photon Map.
01/26/05© 2005 University of Wisconsin Last Time Raytracing and PBRT Structure Radiometric quantities.
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.
Light Animation with Precomputed Light Paths on the GPU László Szécsi, TU Budapest László Szirmay-Kalos, TU Budapest Mateu Sbert, U of Girona.
Precomputation aided GI on the GPU László Szirmay-Kalos.
Visualization of Scanned Cave Data with Global Illumination
Real-Time Soft Shadows with Adaptive Light Source Sampling
Reconstruction For Rendering distribution Effect
Real-Time Volume Graphics [06] Local Volume Illumination
Path Tracing (some material from University of Wisconsin)
Chapter XVI Texturing toward Global Illumination
Chapter XV Shadow Mapping
Directional Occlusion with Neural Network
Real-time Global Illumination with precomputed probe
Presentation transcript:

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Georgios (George) Papaioannou Dept. of Computer Science Athens University of Economics & Business HPG 2011

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Motivation Why build yet another RTGI method? –Significant number of existing techniques –RSM, CLPV, VBGI etc

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Motivation Why build yet another RTGI method? –Significant number of existing techniques –RSM, CLPV, VBGI etc Wanted a diffuse GI method that: –Is stable enough (no view dependence, no flickering etc) –Can capture multiple light bounce effects –Is fast enough to be of practical use –Has limited requirements  easy to integrate to rendering engines

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Main Idea Why not combine the benefits of existing methods? RT Radiance Caching –Fast to sample –Stable But use Reflective Shadow Maps to populate RC –Cheap creation (additional data in SM MRTs) –Camera view independent –Good scaling (e.g. importance sampling) Additional functionality for multiple bounces and occlusion

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Main Idea: Radiance Hints RH combine RSMs with Radiance Caching: Radiance Hints sample RSMs to cache radiance in a volume texture Generate radiance cache data by stochastically sampling the RSMs Generate secondary bounces by radiance exchange among RH points Render the scene by sampling the cached data

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Method Outline For all Radiance Hints (all RH volume texels): - Sample RSM radiance and encode it as SH For all Radiance Hints (all RH volume texels): - Sample RH volume for sec. bounce radiance Repeat for all RSMs For each (visible) geometry fragment sample RH volume to reconstruct GI Radiance field estimation GI rendering Repeat for 2…N bounces

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 RH Configuration RH points are the nodes of a 3D grid The grid covers any part of the scene Extents of each RH grid cell RSM data (position, flux, normals)

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 RSM Sampling Sample from random points inside the cell

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 RSM Sampling Accepted samples Rejected samples

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Radiance Encoding

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Radiance Encoding RH radiance is encoded as spherical harmonics

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Radiance Encoding With up to 8 MRTs: 4- and 9-coefficient spherical harmonics can encode RGB radiance field

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Comments: RH Sample Distribution Uniform distribution of sample points in RH cell Why? –There is nothing special about RH location! –It should be representative of entire cell volume

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Min and Max RSM Sample Distances For reasons that will become apparent next, also maintain and store for each RH: –Min distance to RSM sample –Max distance to RSM sample

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Comments: Multiple RSMs For multiple RSMs (multiple/omni-directional): –A fixed number of samples is distributed among RSMs –Ideal for importance sampling of light sources

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Secondary Bounces Geometry-less: Randomly sample the radiance field! c

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Secondary Bounces Interpolate SH from nearest RHs (volume texture tri-linear interpolation) Integrate incident radiance on the hemisphere aligned with d:  “reflected” radiance on an imaginary surface aligned with d d p RH q

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Secondary Bounces: RH Reliability Are all random RH samples equally reliable? –Certainly not ! –RH near surfaces are more reliable  must be favored –But …we know nothing about the geometry Solution: –For each RH, use the minimum distance r min from RSM sample positions –Bias RH contribution using r min

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Secondary Bounces: RH Reliability Min distance to RSM samples Interpolated min distance at arbitrary location

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Diffuse GI Reconstruction Directly sample the RH volume textures at 4 locations in a rotating kernel above the surface Perform integration in SH domain over the surface- aligned hemisphere Voxel diagonal Half voxel diagonal

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Direct illumination 1 st bounce 2 nd bounce (total 11.6ms) Path tracing A Simple Example

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Occlusion What about visibility tests? –RSMs alone are not very helpful Store “blocking” information? Trying to avoid: –View-dependent geometry injection –Volume-based occlusion. Can be slow to generate and requires multiple texture reads per sample Can I use existing data? –Yes, but only in secondary bounces –Special treatment for first bounce

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Secondary Bounce Occlusion We can use a probabilistic (heuristic) attenuation metric using the stored min/max distances 1 Visibility 0

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Secondary Bounce Occlusion Example The secondary bounce attenuation is not as important as the first bounce one but is almost for free.

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 What About First-Bounce Occlusion? Most important occlusion stage Large RSM scene coverage “masks” occlusion (but results are still far from ground truth) Small RSM scene coverage leads to erroneous cases: Wall not present in RSM

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Depth-based Occlusion (Extension) Use camera depth map to intercept RSM samples Uses a voting system to attenuate RSM samples: Test a few points on the RH-RSM line of sight against the depth map 2/6 visible 4/6 visible 6/6 visible

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Depth-based Occlusion (Extension) View-dependent, but: Not a binary visibility test !  Time-coherent No occlusion Depth-based attenuation

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Performance GI reconstruction 2 nd bounce RH generation GI reconstruction 2 nd bounce RH generation

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Examples – No 1 st Bounce Occlusion

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Examples - No 1 st Bounce Occlusion

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Examples - With 1 st Bounce Occlusion

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Input and Requirements Just the light source RSMs (modern rendering engines require them for other tasks anyway) No geometry is rendered during GI calculations No geometry shaders are needed No pre-processing of any kind No post-processing Can be used in direct and deferred renderers

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Other Extensions Small RH volumes can be placed in disjoint locations –More effective coverage of important areas –Nested RH volumes (for more detail) Due to their linear form (SHs, distances), RHs can be automatically mip-mapped and hierarchically sampled

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Pros and Cons The good news are: –Yes, it is versatile and easy to configure –Has minimal requirements –Handles multiple bounces –The (core) method is view-independent But: –Is an approximate approach –Heuristically handles occlusion

Real-Time Diffuse Global Illumination Using Radiance Hints HPG2011 Thank You Please visit the AUEB Graphics Group web site ( for: –Shader source code –Additional demo images and videos A complete mathematical analysis can be found in the paper.