Precomputed Radiance Transfer Peter-Pike Sloan SDE Windows Graphics & Gaming Technologies Microsoft Corporation Challenges in Rendering Generating realistic images interactively is hard Many dimensions of complexity Geometric.
Download ReportTranscript Precomputed Radiance Transfer Peter-Pike Sloan SDE Windows Graphics & Gaming Technologies Microsoft Corporation Challenges in Rendering Generating realistic images interactively is hard Many dimensions of complexity Geometric.
Precomputed Radiance Transfer Peter-Pike Sloan SDE Windows Graphics & Gaming Technologies Microsoft Corporation Challenges in Rendering Generating realistic images interactively is hard Many dimensions of complexity Geometric complexity Material complexity Meso-scale complexity Lighting complexity Transport complexity Synergy This talk focuses on techniques that enable more lighting/transport complexity Material Complexity Models how light interacts with a surface Assume the “structure” of the material is below the visible scale Simple variation Twist maps Meso-Scale Complexity Variations at a visible scale - not geometry Bump/Roughness maps Parallax Mapping/BTFs extreme examples of this Lighting Complexity What kind of lighting environment is an object in? Directional/point lights Directional + ambient “Smooth” (low frequency) lighting Completely general Lighting Complexity What kind of lighting environment is an object in? Directional/point lights Directional + ambient “Smooth” (low frequency) lighting Completely general Lighting Complexity What kind of lighting environment is an object in? Directional/point lights Directional + ambient “Smooth” (low frequency) lighting Completely general Lighting Complexity What kind of lighting environment is an object in? Directional/point lights Directional + ambient “Smooth” (low frequency) lighting Completely general Transport Complexity How light interacts with objects/scene at a visible scale Shadows Inter-reflections Caustics Translucency (subsurface scattering) Transport Complexity How light interacts with objects/scene at a visible scale Shadows Inter-reflections Caustics Translucency (subsurface scattering) Transport Complexity How light interacts with objects/scene at a visible scale Shadows Inter-reflections Caustics Translucency (subsurface scattering) Transport Complexity How light interacts with objects/scene at a visible scale Shadows Inter-reflections Caustics Translucency (subsurface scattering) Some of All of This Real scenes have all of these forms of complexity Extreme realism in one form of complexity is not necessarily that interesting Incredible material models that are completely homogenous and lit by a single directional light Great lighting environments for diffuse surfaces with no shadows What is Precomputed Radiance Transfer (PRT)? Parameterize an object’s response to lighting, expressed in some basis Partition into two processes Offline transport simulator precomputes spatially varying linear operators that map lighting in given basis to exit radiance Run time render the object using the current viewing/lighting environment using precomputed data PRT Teaser Demo Terminology Terminology Terminology Terminology Rendering Equation L p d Le p d f r p, s d L p s H N p s ds Rendering Equation L p d Le p d f r p, s d L p s H N p s ds Radiance leaving point p in direction d Rendering Equation L p d Le p d f r p, s d L p s H N p s ds Radiance emitted from point p in direction d Rendering Equation L p d Le p d f r p, s d L p s H N p s ds Integral over directions s on the hemisphere around p Rendering Equation L p d Le p d f r p, s d L p s H N p s ds BRDF at point p evaluated for incident direction s in outgoing direction d Rendering Equation L p d Le p d f r p, s d L p s H N p s ds Radiance arriving at point p from direction s (also LHS) Rendering Equation L p d Le p d f r p, s d L p s H N p s ds Lamberts law – cosine between normal and -s = dot(Np, -s) Neumann Expansion L p d L0 p d L1 p d Exit radiance expressed as infinite series Neumann Expansion L p d L0 p d L1 p d Direct lighting arriving at point p – from distant environment Neumann Expansion L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds Direct lighting arriving at point p – from distant environment Neumann Expansion L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds Source Radiance – distant lighting environment Neumann Expansion L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds Visibility function - binary Neumann Expansion L p d L0 p d L1 p d All paths from source that take 1 bounce Neumann Expansion L p d L0 p d L1 p d L1 p d f r p, s d L0 p s 1 V p s H N p s ds L0 All paths from source that take 1 bounce Neumann Expansion L p d f p, s d L p s 1 V p s H L p d L0 p d L1 p d i r i 1 Li-1 All paths from source that take i bounces Np s ds Diffuse PRT L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds Diffuse PRT L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds L0 p d LS s V p s H N s ds p Diffuse PRT L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds L0 p d LS s V p s H N s ds p Diffuse PRT L p d L0 p d L1 p d L0 p d f r p, s d LS p s V p s H N p s ds L0 p d LS s V p s H N s ds p Diffuse PRT d L0 p LS s V p s H N s ds LS s liYi s p i Diffuse PRT d L0 p l Y s V p s H N s ds i i i d L0 p li Yi s V p s H N s ds i p p Diffuse PRT d L0 p l Y s V p s H s ds i i i Np d 0 L0 p l t i i pi L0 p li t 0pi i Diffuse PRT L p d L0 p d L1 p d L p li t 0pi t1pi i L p li t pi i Diffuse Self-Transfer 2D example, piecewise constant basis, shadows only Preprocess Project Light Rendering p2 p2 p3 p1 p2 p3 p1 p3 light light • p1 • p2 • p3 p1 = = = Precomputation .. . Basis 16 Basis 17 Basis 18 .. . illuminate result Spherical Harmonics Spherical analog to Fourier transform Represents complex functions on the sphere, real form used in graphics Polynomials in R3 Full basis through O has O2 coeffs Projection/Evaluation/Rotation are fairly straightforward Small number of bands implies “low frequency” lighting Spherical Harmonics Spherical Harmonics n=2 n=3 n=26 original n=5 Spherical Harmonics Rotation invariance No temporal “wobbling” of projection Low frequency is also strength Reduces necessary surface sampling rate Addresses lighting that is most difficult with traditional techniques Global support is a limitation PRT Demo PRT Limitations/Extensions Rigid objects “Local, Deformable Precomputed Radiance Transfer”, Siggraph 2005 Raw form unwieldy 6th order would require 108 coefficients/vertex Siggraph 2003 paper compresses both data and computation, small number (4-12) coefficiens/vertex, much simpler shaders This is what makes it work in games… PRT Limitations/Extensions Glossy surfaces Still to heavyweight for games, EGSR 2004 papers most applicable (separable BRDF approximations) “All Frequency”, using other light basis functions Ng et al Siggraph 2003, two EGSR 2004 papers Dramatically increases storage location per point, and spatial sampling rates over surfaces PRT in the SDK Precomputation for diffuse objects only Includes inter-reflections and subsurface scattering Glossy isn’t practical for games Compression Siggraph 2003 paper, what made it actually doable in a game Run time code for efficient evaluation of lighting models, projection and rotation Conclusions Precomputed Radiance Transfer enables interactive rendering of complex global illumination effects Appropriate for low frequency lights, can be mixed with traditional techniques to model high frequency lighting Acknowledgments Coauthors John Snyder, Jan Kautz, Ben Luna, John Hart, Jesse Hall Samples/Artwork/Slides Jason Sandlin, John Steed, Shanon Drone Light Probes Paul Debevec DirectX Community Resources http://msdn.com/directx “Windows Game Development” MSDN Forums http://forums.microsoft.com/msdn/default.aspx Forums: General, Graphics, Tools, Performance, and Audio Fully Moderated Discussions Notification Alerts, Messages and RSS Feeds Integrated with Visual Studio 2005 Advanced Search FAQs Answered/Unanswered Questions [email protected] References “Precomputed Radiance Transfer for Real-Time Rendering in Dynamic, Low-Frequency Lighting Environments”, Sloan, Kautz and Snyder Siggraph 2002 “Clustered Principal Components for Precomputed Radiance Transfer”, Sloan, Hall, Hart and Snyder Siggraph 2003 “All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation”, Ng, Ramamoorthi and Hanranan Siggraph 2003 “All-Frequency Precomputed Radiance Transfer for Glossy Objects”, Liu, Sloan, Shum and Snyder, Eurographics Symposium on Rendering 2004 “All-Frequency Relighting of Non-Diffuse Objects using Separable BRDF Approximation”, Wang, Tran and Luebke, Eurographics Symposium on Rendering 2004 “Local, Deformable Precomputed Radiance Transfer”, Sloan, Luna and Snyder Siggraph 2005 http://research.microsoft.com/~ppsloan © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.