470 likes | 635 Views
Local, Deformable Precomputed Radiance Transfer. Peter-Pike Sloan, Ben Luna Microsoft Corporation John Snyder Microsoft Research. “Local” Global Illumination. Renders GI effects on local details. Rotates transfer model. Neglects gross shadowing. “Local” Global Illumination. Original.
E N D
Local, Deformable Precomputed Radiance Transfer Peter-Pike Sloan, Ben Luna Microsoft Corporation John Snyder Microsoft Research
“Local” Global Illumination Renders GI effects on local details Rotates transfer model Neglects gross shadowing
“Local” Global Illumination Original Ray Traced Rotated
Precomputed Radiance Transfer (PRT) Transfer Vector illuminate response
Related Work: Area Lighting [Ramamoorthi2001] [Sloan2003] [Muller2004] [Kautz2004] [Sloan2002] [Ng2003] [James2003] [Zhou2005] [Liu2004;Wang2004]
Directional Lighting [Malzbender2001],[Ashikhmin2002] [Heidrich2000] [Max1988],[Dana1999] Ambient Occlusion [Miller1994],[Phar2004] [Kontkanen2005],[Bunnel2005] Environmental Lighting [McCallister2002] Other Related Work
Spherical Harmonics (SH) • Spherical Analog to the Fourier basis • Used extensively in graphics • [Kajiya84;Cabral87;Sillion91;Westin92;Stam95] • Polynomials in R3 restricted to sphere projection reconstruction
Spherical Harmonics (SH) • Spherical Analog to the Fourier basis • Used extensively in graphics • [Kajiya84;Cabral87;Sillion91;Westin92;Stam95] • Polynomials in R3 restricted to sphere projection reconstruction
Low Frequency Lighting order 1 order 4 order 2 order 8 order 16 order 32 original
SH SH SH Rotational Invariance rotate rotate
Spherical Harmonics (SH) nth order, n2 coefficients Evaluation O(n2)
Zonal Harmonics (ZH) Polynomials in Z Circular Symmetry
SH Rotation Structure O(n3) Too Slow!
ZH Rotation Structure O(n2)
What’s that column? z Rotate delta function so that z→ z’ : • Evaluate delta function at z = (0,0,1) • Rotating scales column C by dl • Equals y(z’) due to rotation invariance z’
What’s that column? z Rotate delta function so that z→ z’ : • Evaluate delta function at z = (0,0,1) • Rotating scales column C by dl • Equals y(z’) due to rotation invariance z’
z Efficient ZH Rotation g(s)
z Efficient ZH Rotation g(s)
z z’ Efficient ZH Rotation g’(s) g(s)
z z’ Efficient ZH Rotation g’(s) g(s)
z z’ Efficient ZH Rotation g’(s) g(s)
+ + + Transfer Approx. Using ZH • Approximate transfer vector t by sum of N “lobes”
Transfer Approx. Using ZH • Approximate transfer vector t by sum of N “lobes”
Transfer Approx. Using ZH • Approximate transfer vector t by sum of N “lobes” • Minimize squared error over the sphere
Single Lobe Solution • For known direction s*, closed form solution • “Optimal linear” direction is often good • Reproduces linear, formed by gradient of linear terms • Well behaved under interpolation • Cosine weighted direction of maximal visibility in AO
Rendering • Rotate lobe axis, reconstruct transfer and dot with lighting • Care must be taken when interpolating • Non-linear parameters • Lobe correspondence with multiple-lobes
Light Specialized Rendering Quadratic Cubic O(Nn2) → O(Nn) Quartic Quintic
Generating LDPRT Models • PRT simulation over mesh • texture: specify patch (a) • per-vertex: specify mesh (b) • Parameterized models • ad-hoc using intuitive parameters (c) • fit to simulation data (d) (a) LDPRT texture (b) LDPRT mesh (d) wrinkle model (c) thin-membrane model
LDPRT Texture Pipeline • Start with “tileable” heightmap • Simulate 3x3 grid • Extract and fit LDPRT • Store in texture maps
Thin Membrane Model • Single degree of freedom (DOF) • “optical thickness”: light bleed in negative normal direction
Wrinkle Model • Two DOF • Phase, position along canonical wrinkle
Wrinkle Model • Two DOF • Phase, position along canonical wrinkle • Amplitude, max magnitude of wrinkle
Wrinkle Model Fit • Compute several simulations • 64 discrete amplitudes • 255 unique points in phase • Fit 32x32 textures • One optimization for all DOF simultaneously • Optimized for bi-linear reconstruction • 3 lobes
Use separable BRDF Encode each “row” of transfer matrix using multiple lobes (3 lobes, 4th order lighting) See paper for details Glossy LDPRT
Conclusions/Future Work • “local” global illumination effects • soft shadows, inter-reflections, translucency • easy-to-rotate rep. for spherical functions • sums of rotated zonal harmonics • allows dynamic geometry, real-time performance • may be useful in other applications [Zhou2005] • future work: non-local effects • articulated characters
Acknowledgements • Demos/Art: John Steed, Shanon Drone, Jason Sandlin • Video: David Thiel • Graphics Cards: Matt Radeki • Light Probes: Paul Debevec