Download presentation
Published byBerenice Garrison Modified over 9 years ago
1
All-Frequency Rendering of Dynamic, Spatially-Varying Reflectance
Jiaping Wang, Peiran Ren, Minmin Gong, John Snyder, Baining Guo SIGGRAPH Asia 2009 Presenter: Kevin April 14, 2010
2
Authors Jiaping Wang Microsoft Research Asia [1]
Peiran Ren [2] Minmin Gong [1] John Snyder [3] Baining Guo [2] Jiaping Wang [1] Jiaping Wang (王嘉平): 2007年中科院phd畢業 Peiran Ren: 現清華phd student Baining Guo: Ren的指導教授 John Snyder: Principle Researcher of MSR Microsoft Research Asia [1] Tsinghua University [2] Microsoft Research [3]
3
Introduction
4
Introduction Final goal of real-time realistic rendering
Dynamic lighting Changeable viewpoint All-frequency effects Dynamic, editable, and spatially-varying materials Dynamic, deformable scenes All-Frequency effects includes all-frequency shadows, all-frequency lighting, specular reflections ... Etc Dynamic materials: the material can change with time, for physical reasons such as wetting/drying Ng et al. SIGGRAPH ‘04 Wang et al. SIGGRAPH Asia ‘09 Sloan et al. SIGGRAPH ‘05
5
Introduction-2 Challenges BRDF complexity Light integration complexity
Modeling the complex reflectance of real world materials Light integration complexity Integration over the whole hemisphere (cannot afford especially when environment maps are used) Light transport complexity Interreflection, shadows, …etc
6
Introduction-2 Off-line High Quality Real-time Precomputed Radiance
Transfer Real-time Ray-tracing Programmable Graphics Hardware When we seek for real-time performance, we need make a trade-off to quality According to Ramamoorthi CG&V (2009), there are three techs to bridge off-line rendering to real-time rendering. The first is PRT, the paper I want to present today belongs to this category. I will have a detailed introduction later. The second is real-time ray-tracing, or GPU ray-tracing. The third is other programmable graphics hardware techniques. Wang et al. SIGGRAPH ‘09 Ritschel et al. SIGGRAPH Asia ‘08 Dachsbacher et al. SIGGRAPH ‘07
7
Introduction-3 Precomputed Radiance Transfer (PRT)
The term comes from [Sloan ’02] Precompute “light transport function” Compress by basis (SH, Wavelet, SRBF…) The computation of rendering equation reduces to inner/vector products in the run time
8
Introduction-4 PRT timeline (02~05) Triple Product Wavelet Dynamic
Zhou et al. SIGGRAPH ‘05 Ng et al. SIGGRAPH ‘03 Ng et al. SIGGRAPH ‘04 Wavelet Dynamic Scenes 02 03 04 05 [Sloan 02] low-frequency, size of data =====Remove limitations of Sloan 02===== [Sloan 03] CPCA [Ng 03] all-frequency relighting =====Remove limitations of Ng 03===== [Ng 04] triple-product [Wang 04] in-out factorization =====Dynamic Scene===== [Sloan 05], [Zhou 05] Sloan et al. SIGGRAPH ‘05 Sloan et al. SIGGRAPH ‘02 Wang et al. EGSR ‘04 Pioneer, SH Sloan et al. SIGGRAPH ‘03 CPCA In-Out Fac. Lui et al. EGSR ‘04
9
Introduction-5 PRT timeline (06~09) SVBRDF, BRDF-Editing BRDF-Editing
With G.I. PRT timeline (06~09) Wang et al. SIGGRAPH Asia ‘09 Ben-Artzi et al. ACMTOG ‘08 BRDF-Editing Green et al. I3D ‘06 Green et al. EGSR ‘07 Ben-Artzi et al. SIGGRAPH ‘06 SRBF 06 07 08 09 =====Improve performance of [Wang 04]===== [Tsai 06] [Wang 06]: interreflection of in-out factorization =====BRDF editing with Env. Map===== [Ben-Artzi 06]: first paper to edit material under full env.map [Sun 07]: two bounce, changeable view [Ben-Artzi 07]: multibounce, fixed view =====Survey===== [Ramamoorthi 09] Ramamoorthi CG&V ‘09 Sun et al. SIGGRAPH ‘07 Wang et al. ACMTOG ‘06 BRDF-Editing With G.I. Survey Xu et al. TVCG ‘08 CTA Tsai et al. SIGGRAPH ‘06
10
Introduction-6 Summary Compression Basis
PCA, Clustered PCA (CPCA), Clustered Tensor Approximation (CTA) … Basis Spherical harmonics (SH) Wavelets Zonal harmonics (ZH) Spherical Radial Basis Function (SRBF) Compression is a issue Basis chosen
11
Introduction-7 Summary (cont.)
How to choose good basis for representation? Can model all-frequency effects Rotational invariant Accuracy Compact Fit clamped cosine term to basis Wang et al. SIGGRAPH Asia ‘09 – supplement materials
12
Introduction-8 Spherical Gaussian (SG)
A type of SRBF, symmetric around a specific lobe axis All advantages in the previous page Inner product & cross product can be efficiently computed lobe axis lobe amplitude lobe sharpness
13
Introduction-9 SG mixtures Single Lobe Two Lobes Multiple Lobes
Rotated version
14
Overview
15
This Paper Real-time Dynamic (editable, change with time), spatially-varying BRDFs All-frequency effects from both environmental and local point lights Static scenes No interreflection
16
Problem Formulation Challenge with dynamic SVBRDF with all-frequency lighting The size of precomputed data Previous solutions Limit the dimensions (low-frequency, fixed view…) Combine BRDF and Visibility into “light transfer function” and sample sparsely at vertices Preclude dynamic and significant spatial varying BRDFs
17
Contributions Propose two new representations for BRDFs and Visibility to compact the size of data SG mixtures for microfacet-based reflectance Accurate and compact Parametric BRDFs can be fit on-the-fly Fast rotation, warping, and products in run time SSDFs for visibility Ghost-free, per-pixel interpolation Dynamic local point lights
18
Approach Overview Decoupling BRDF from visibility Represent
Fit into SGs 6D SVBRDF 4D NDF (Microfacet) Mixture of SGs (Spherical Gaussians) Eigen- Vectors Map PCA Visibility (binary) SSDF (Spherical Signed Distance Functions)
19
SVBRDF Representation
20
SVBRDF Representation
Microfacet Model Why use microfacet model? General Compact Normal Distribution Function Geometry Term Fresnel Term
21
SVBRDF Representation-2
Reflectance representation using SGs Parametric BRDFs (on-the-fly fitting) Example: Cook-Torrance Model remaining factor (shadowing+Fresnel) NDF Fit into SGs Very Smooth High-Frequency
22
SVBRDF Representation-3
Cook-Torrance m=0.1 Cook-Torrance m=0.045 ground truth single-lobe SG (this paper) 256-term term term BRDF factorization
23
SVBRDF Representation-4
Ashikhmin-Shirley nu=8,nv=128 Ashikhmin-Shirley nu=25,nv=400 Ashikhmin-Shirley nu=75,nv=1200 ground truth 7-lobe SG (this paper) 256-term term BRDF factorization
24
SVBRDF Representation-5
Accuracy Parametric isotropic models
25
SVBRDF Representation-6
Accuracy (cont.) Parametric anisotropic models
26
SVBRDF Representation-7
Reflectance representation using SGs Measured BRDFs (preprocessing) Using tabulated NDF [Wang et al. SIGGRAPH ‘08] and shadowing factor S at each surface point Compress shadowing function by PCA (8D) Fit NDF with a small number of SGs
27
SVBRDF Representation-8
fabric green phenolic yellow albm bronze violet acrylic delrin steel ground truth 1SG 2SG 3SG 256-Term Fac. 64-Term Fac.
28
SVBRDF Representation-9
Accuracy Measured BRDFs
29
Visibility Representation
30
Visibility Representation
Spatially-varying visibility is represented with Spherical signed distance function (SSDF) Directly interpolate binary visibilities will produce ghost effects SSDF maps binary visibility to continuous function
31
Visibility Representation-2
SSDF mapping Positive: visible; negative: occluded Value: the angular distance to the nearest direction t on the shadow boundary
32
Visibility Representation-3
Reconstructed Visibility δ: elevation angle Inner product / vector product of SGs and V’(i) can be efficiently evaluated in the run time!
33
Visibility Representation-3
Compression Using PCA PCA coefficients are stored as vertex attributes and Interpolated to each pixel during rasterization Eigenvectors are encoded in multiple textures PCA eigenvectors PCA coefficients
34
Visibility Representation-4
Compression results Ray-Traced Uncompressed SSDF SSDF/PCA 384 Terms SSDF/PCA 144 Terms SSDF/PCA 48 Terms SSDF/PCA 16 Terms
35
Lighting Representation
36
Lighting Representation
Local point lights Approximated with a single-lobe SG Yielding a spatially-varying radiance field Infinitely-distant light from direction I l: 3D light position s: intensity
37
Lighting Representation-2
Distant environmental lighting Apply to diffuse component Fit the environment map with a SG mixture [Tsai. et al. SIGGRAPH 2006] Apply to specular component Preconvolve environmental radiance with SG kernels The run-time inner product is reduced to a MIPMAP texture fetch [Kautz et al. EGWR 2000], [McAllister et al. GH 2002], [Green et al. I3D 2006]
38
Run-Time Rendering
39
Run-Time Rendering Per-vertex attributes
Position, texture coordinates, local coordinate frame, PCA coefficient for SSDF BRDF parameters, tabulated SG lobes (for measured BRDFs), and PCA-compressed shadow factors are stored in textures interploated across triangle mesh when passing from vertex shader to pixel shader
40
Multiplied remaining factor
Run-Time Rendering-2 Cosine Approximation Lighting Approximation Spherical Warp Multiplied remaining factor BRDF Approximation SGs for NDF Visibility Approximation PCA coefficients of SSDFs Uncompressed on GPU
41
Experimental Results
42
Experimental Results Data size and precomputation time
43
Experimental Results-2
Per-vertex vs. per-pixel wireframe per-vertex shading per-pixel shading
44
Experimental Results-3
Distant environmental light + nearby point light
45
Experimental Results-4
Results for isotropic BRDFs
46
Experimental Results-5
Results for anisotropic BRDFs
47
Experimental Results-6
Video
48
Conclusion Solution for highly-specular, spatially varying, dynamic materials, natural lighting, changeable viewpoints realistic rendering SG mixtures for microfacet-based reflectance Accurate and compact Fast rotation, warping, and products in run time SSDFs for visibility Ghost-free, per-pixel interpolation Allow sparse set of per-vertex visibility samples
49
End Thanks for your Attention
50
[Sloan et al. 02] Precomputed Radiance Transfer for Real-Time Rendering in Dynamic, Low-Frequency Lighting Environment Sloan, Kautz, and Snyder SIGGRAPH 2002 Two innovations Use full environment map by SH (shadows + interreflection) Work directly on geometry, reduce the rendering to a dot product on GPU
51
[Sloan et al. 02]-2 Algorithm (diffuse) Express lighting as SH
Reflection Equation becomes Define transfer function and project to SH Rendering reduces to 1. Low-frequency lighting environments (and BRDFs) can be represented using only a few SH 2. Focus on light transport complexity precompute light transfer function Transfer vector (diffuse) Transfer Matrix (glossy)
52
[Ng et al. 03] All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation Ng, Ramamoorthi, Hanrahan SIGGRAPH 2003
53
[Ng et al. 03]-2 Relighting: Matrix-Vector Multiplication = Column:
Lo: column vector for the computed radiance (or image) L: incident illumination (environment map) T: matrix (row: one pixel/vertex, column: specific lighting direction) Column: Lighting direction = Lo Li Row: Pixel or Vertex
54
[Ng et al. 03]-3 The dimension of T is too large
x for a 512x512 image and 6 x 64 x 64 environment map Approximate by basis fitting (How to preserve high-frequency shadow?) Approach: Approximate lighting dynamically at run- time using wavelet Sloan 2002 can also be thought as an approximation by basis fitting, but it is linear (the terms to be used are chosen in advance) Sloan use the first few columns (9~25) to approximate lighting. Ng use non-linear approximation, choosing terms in run time with the most important ones Limitation: size of T, bulk for GPU computation. (less commercial usage) 100~200 basis coefficients are enough to generate high-quality results (compared to with SH)
55
[Ng et al. 04] Triple Product Wavelet Integrals for All-Frequency Relighting Ng, Ramamoorthi, Hanrahan SIGGRAPH 2004 Sloan 2003 is the first paper to allow changeable viewpoint, but limit to low-frequency effects All-frequency, dynamic viewing bottleneck: data size (6D, 100 samples each D will produce 10^12 sample points)
56
[Ng et al. 04]-2 Changeable view makes a 6D function
Factor the BRDF and visibility, reduce 6D function into two 4D functions For each spatial location and outgoing direction, store 3 functions in cubemaps (Light, Visibility, BRDF) Calculate triple-product in run time The coupling-product advantages make the previous work combine BRDF and Visibility If we want to decompose it, we need a good approach to evaluate triple product Evaluation method: Complexity for computing one triple product coefficient Sparsity: how many terms are zero
57
[Ng et al. 04]-3
58
[Wang et al. 04] All-Frequency Relighting of Non-Diffuse Objects using Separable BRDF Approximation Rui Wang, John Tran, and David Luebke EGSR 2004
59
[Wang et al. 04]-2 Factor the BRDF into terms which depend only on incident / outgoing angles We can then define and precompute a view-independent transport function Thus, rendering is reduced to Sigma-k: singular/eigenvalue Hk/gk: 2D maps First calculate the view-independent transport function Then modulate integral by the view factor
60
[Wang et al. 04]-3 Comparison Triple product BRDF in-out factorization
Pros: support true all-frequency effects Cons: performance BRDF in-out factorization Pros: speed and simple Cons: k can not be large, make it only suit for glossy or broad specular lobes For triple product method, signal compression like clustered PCA is not possible across vertices ofthe geometry. This is because visibility and BRDF must be combined at run-time, and they are represented in different spaces
61
[Tsai et al. 06] All-Frequency Precomputed Radiance Transfer using Spherical Radial Basis Functions and Clustered Tensor Approximation Yu-Ting Tsai and Zen-Chung Shih SIGGRAPH 2006 The transport function T in In-out factorization [Wang et al. 2004] can be spatially compressed by CPCA However, this paper provides a better way, Clustered Tensor Approximation, improving the performance
62
[Tsai et al. 06]-2
63
[Ben Artzi et al. 06] Real-Time BRDF Editing in Complex Lighting
Ben-Artzi, Overbeck, Ramamoorthi SIGGRAPH 2006 Human have better perception of materials under natural illumination This paper is the first one to allow continuous material editing under environment map
64
[Ben Artzi et al. 06]-2 Fixed the scene, lighting, and viewpoint
Write the BRDF as an expansion in terms of basis functions, instead of lighting Encapsulated in a single 1D function or curve Challenge: the BRDF is a 4D quantity, not easily amenable to a compact basis expansion in spherical harmonics or wavelets Example: For Phong model, Gamma(in,out) = Theta between reflection direction and viewing direction Curve f(gamma): cos^n(theta), controled by n Allow user to adjust the editable part via curve control Fixed part Editable part
65
[Ben Artzi et al. 08] A Precomputed Polynomial Representation for Interactive BRDF Editing with Global Illumination Ben-Artzi, Egan, and Ramamorthi ACMTOG 2008 Approximations, such as reducing the number of coefficients for BRDFs further from the viewing path, are used to keep the computation tractable
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.