270 likes | 286 Views
Spherical Harmonic Lighting. Jaroslav K řivánek. Overview. Function approximation Spherical harmonics Some other time Illumination from environment maps BRDF representation by spherical harmonics Spherical harmonics rotation Hemispherical harmonics Radiance Caching
E N D
Spherical Harmonic Lighting Jaroslav Křivánek
Overview • Function approximation • Spherical harmonics • Some other time • Illumination from environment maps • BRDF representation by spherical harmonics • Spherical harmonics rotation • Hemispherical harmonics • Radiance Caching • Precomputed Radiance Transfer • Clustered Principal Component Analysis • Wavelet Methods
Function Approximation • G(x) ... function to approximate • B1(x), B2(x), … Bn(x) … basis functions • We want • Storing a finite number of coefficients cigives an approximation of G(x)
Function Approximation • How to find coefficients ci? • Minimize an error measure • What error measure? • L2 error
Function Approximation • Minimizing EL2 leads to • Where(function scalar product)
Function Approximation • Orthonormal basis • If basis is orthonormal then • we want our bases to be orthonormal
Spherical Harmonics • Spherical function approximation • Domain I = unit sphere S • = directions in 3D • Approximated function: G(θ,φ) • Basis functions: Yi(θ,φ)= Yl,m(θ,φ) • indexing: i = l(l+1)+m
Y0,0 Y1,-1 Y1,0 Y1,1 Y2,-2 Y2,-1 Y2,0 Y2,1 Y2,2 Spherical Harmonics band 0 (l=0) band 1 (l=1) band 2 (l=2)
Spherical Harmonics • K … normalization constant • P … Associted Legendre polynomial • Orthonormal polynomial basis on (0,1) • In general: Yl,m(θ,φ) = K . Ψ(φ) . Pl,m(cos θ) • Yl,m(θ,φ) is separable in θ and φ
Function Approximation with SH • n…approximation order • There are n2 harmonics for order n
Function Approximation with SH • Spherical harmonics are ORTHONORMAL • Function projection • Computing the SH coefficients • Usually evaluated by numerical integration • Low number of coefficients low-frequency signal
Product Integral with SH • Simplified indexing • Yi= Yl,m • i = l(l+1)+m • 2 functions represented by SH • Integral of F(ω).G(ω) is the dot product of F’s and G’s SH coefficients
fi Yi(ω) F(ω) = fi gi gi Yi(ω) G(ω) = G(ω)F(ω)dx = Product Integral with SH
Product Integral with SH • Fundamental property for graphics • Proof
Direct Lighting • Illumination integral at a point • How it simplifies for a parallel directional light • Environment maps • Approximate specular reflection • Lighting does not depend on position • General illumination integral for an environment map • How it simplifies for a specular BRDF • What if the BRDF is not perfectly specular?
Illumination from environment maps • SH representation for lighting & BRDF • Rotation
Hemispherical harmonics • New set of basis functions • Designed for representing hemispherical functions • Definition similar to spherical harmonics
Hemispherical harmonics Shifting
(0,0) (1,-1) (1,0) (1,1) (2,-2) (2,-1) (2,0) (2,1) (2,2) Hemispherical harmonics SH: Yl,m(θ,φ) = K . Ψ(φ) . Pl,m(cos θ) HSH: Hl,m(θ,φ) = K . Ψ(φ) . Pl,m(2cos θ-1)
Hemispherical Harmonics • video
Radiance Caching • Irradiance caching [Ward88] • Diffuse indirect illumination is smooth • Sample only sparsely, cache and interpolate later • Low-frequency view BRDF • Indirect illumination smooth as well • But the illumination is view dependent • Irradiance does not describe view dependence • Cache radiance instead of irradiance • RADIANCE CACHING
Radiance Caching • Incoming radiance representation • BRDF representation • Interpolation • Alignment • Gradients • Video