Presentation is loading. Please wait.

Presentation is loading. Please wait.

All-Frequency Rendering of Dynamic, Spatially-Varying Reflectance

Similar presentations

Presentation on theme: "All-Frequency Rendering of Dynamic, Spatially-Varying Reflectance"— Presentation transcript:

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 [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

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

Download ppt "All-Frequency Rendering of Dynamic, Spatially-Varying Reflectance"

Similar presentations

Ads by Google