real-time shading with filtered importance sampling mark colbert university of central florida...
TRANSCRIPT
![Page 1: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/1.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/2.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/3.jpg)
Demo
![Page 4: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/4.jpg)
Real-time Shading with Filtered Importance Sampling
Our Approach• BRDF proportional sampling• Environment map filtering
![Page 5: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/5.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/6.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/7.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/8.jpg)
Real-time Shading with Filtered Importance Sampling
Importance Sampling Result
40 samples per pixel
![Page 9: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/9.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/10.jpg)
Real-time Shading with Filtered Importance Sampling
Same Sequence Result
40 samples per pixel
![Page 11: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/11.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/12.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/13.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/14.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/15.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/16.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/17.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/18.jpg)
Real-time Shading with Filtered Importance Sampling
Performance512x512 Sphere
![Page 19: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/19.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/20.jpg)
Questions
![Page 21: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/21.jpg)
Additional Slides
![Page 22: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/22.jpg)
Real-time Shading with Filtered Importance Sampling
Performance
![Page 23: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/23.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/24.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/25.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/26.jpg)
Real-time Shading with Filtered Importance Sampling
Environment Mapping• Dual Paraboloid
Error
Support Region
![Page 27: Real-time Shading with Filtered Importance Sampling Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/27.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/28.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/29.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/30.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/31.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/32.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/33.jpg)
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 Mark Colbert University of Central Florida Jaroslav Křivánek Czech Technical University in Prague](https://reader037.vdocuments.us/reader037/viewer/2022110116/551b5737550346ae7a8b55d1/html5/thumbnails/34.jpg)
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),(),(