+ All Categories
Home > Documents > Real-time Shading with Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Date post: 23-Jan-2016
Category:
Upload: hamlet
View: 23 times
Download: 0 times
Share this document with a friend
Description:
Real-time Shading with Filtered Importance Sampling. Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague. Motivation. Dynamic BRDF and lighting Applications Material design Gaming Production pipeline friendly Single GPU shader - PowerPoint PPT Presentation
Popular Tags:
34
Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague
Transcript
Page 1: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Mark ColbertUniversity of Central Florida

Jaroslav KřivánekCzech Technical University in Prague

Page 2: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Motivation• Dynamic BRDF and lighting• Applications– Material design– Gaming

• Production pipeline friendly– Single GPU shader– No precomputation– Minimal code base

Page 3: Real-time Shading with  Filtered Importance Sampling

Demo

Page 4: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Our Approach• BRDF proportional sampling• Environment map filtering

Page 5: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Related Work• A Unified Approach to

Prefiltered Environment Maps[ Kautz et al. 2000 ]

• Efficient Rendering of Spatial Bi-directional Reflectance Distribution Functions[ McAllister et al. 2002 ]

• Efficient Reflectance and Visibility Approximations for Environment Map Rendering [ Green et al. 2007 ]

• Interactive Illumination with Coherent Shadow Maps[ Ritschel et al. 2007 ]

Page 6: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Illumination Integral

• Ignores visibility[ Kozlowski and Kautz 2007 ]

• Computationally expensive

Page 7: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Importance Sampling

• Choose a few random samples• Select according to the BRDF

Page 8: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Importance Sampling Result

40 samples per pixel

Page 9: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Random Numbers on the GPU• Relatively expensive – Random numbers per pixel (computation)– Random number textures (memory/indirection)

• Quasi-random sequence– Good sample distribution (no clumping)– Use same sequence for each pixel

Page 10: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Same Sequence Result

40 samples per pixel

Page 11: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Filtered Importance Sampling

• Filter environment mapbetween samples over hemisphere– Samples distributed by the BRDF

• Support approximately equivalent to:

Page 12: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Filtering• Use MIP-maps• Level proportional to

log of filter size

Page 13: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Implementation• Auto-generated MIP-map• Dual paraboloids• Single GPU Shader– Sum together filtered samples

Page 14: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

ResultsSphere – Grace Probe

Stoc

hasti

c

Refe

renc

e

No

Filte

ring

Our

Res

ult

Page 15: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

ResultsBunny – Ennis Probe

Stoc

hasti

c

No

Filte

ring

Refe

renc

e

Our

Res

ult

Page 16: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Approximations• Constant BRDF across filter• Isotropic filter shape• Tri-linear filtering

Page 17: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

RMS Error

n=10

n=100

n=1000

Phong Reflection - Ennis Light Probe

Page 18: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Performance512x512 Sphere

Page 19: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Conclusions• Real-time glossy surface

reflections• Signal Processing Theory• Practical• Affords new interfaces• For more information:

GPU Gems 3• Download the code now!– graphics.cs.ucf.edu/gpusampling/

Page 20: Real-time Shading with  Filtered Importance Sampling

Questions

Page 21: Real-time Shading with  Filtered Importance Sampling

Additional Slides

Page 22: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Performance

Page 23: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

• Product of lighting and BRDF– Requires bookkeeping– Too expensive

• Lighting• BRDF

Which distribution?

Page 24: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Which distribution?• Product of lighting and BRDF• Lighting– Too many samples for glossy surfaces

• BRDF

Page 25: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Which distribution?• Product of lighting and BRDF• Lighting• BRDF– Computationally efficient

Page 26: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Environment Mapping• Dual Paraboloid

Error

Support Region

Page 27: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Environment Mapping• Cube Maps– Low distortion– Accelerated by GPU– Decimation/reconstruction

filters non-spherical– Introduces Seams

Page 28: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Environment Mapping• Latitude/Longitude– Too much distortion at poles

Page 29: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Measured BRDF Data• Fast primitive distribution for illustration

[ Secord et al. 2002 ]

• Efficient BRDF importance sampling using a factored representation[ Lawrence et al. 2004 ]

• Probability Trees[ McCool and Harwood 1997 ]

Page 30: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Importance Sampling

10

1

0

Random Sampleson Unit Square

PDF-Proportional Samples on Hemisphere

PDF Mapping

Page 31: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Pseudocodefloat4 FilteredIS(float3 viewing : TEXCOORD1

uniform sampler2D env) : COLOR{ float4 c = 0; // sample loop for (int k=0; k < N; k++) { float2 xi = quasi_random_seq(k); float3 u = sample_material(xi); float pdf = p(u, viewing); float lod = compute_lod(u, pdf);

float3 L = tex2Dlod(env,float4(u, lod)); c += L*f(u,viewing)/pdf; } return c/N;}

Page 32: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Filter Support

• Ideal• Isotropic approximation– Assume sample points are perfectly stratified– Implies area of 1 sample = 1 / N– Use Jacobian approximation for warping

function (Inverted PDF)– Support region of sample 1 / p(i, o) N

Page 33: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Ideal Sample Filter Design

• h – Filter function• More expensive than

illumination integral

dhp

fLS k

ok

okiok )(

),(

cos),()(),(

Page 34: Real-time Shading with  Filtered Importance Sampling

Real-time Shading with Filtered Importance Sampling

Approximate Sample Filter

• Estimate for sample • BRDF PDF– PDF is normalized BRDF– Near constant over single sample

• Low frequency cosine approximation– Use multiple samples to estimate effect

dhLp

fS ki

ok

kokok )()(

),(

cos),(),(


Recommended