09 Shadow Mapping
Steve Marschner CS5625 Spring 2019
Thanks to previous instructor Kavita Bala
09 Shadow Mapping Steve Marschner CS5625 Spring 2019 Thanks to - - PowerPoint PPT Presentation
09 Shadow Mapping Steve Marschner CS5625 Spring 2019 Thanks to previous instructor Kavita Bala Shadows as depth cue [tricks-and-illusions.com] Shadows as anchors Shadows as anchors Fake shadows Before we get into more complex methods
Thanks to previous instructor Kavita Bala
[tricks-and-illusions.com]
Before we get into more complex methods…
can suffice
mask to darken floor
Shadow baking
the light and all geometry are static
IKEA Place iOS app
Main idea: reuse the z-buffer mechanism to test for light source visibility
Shadow testing and visibility testing are similar problems
(x,y); z <= buffer(x,y) implies visible
Some serious differences in practice
in light space)
[Möller et al. RTR]
Mark Kilgard
Mark Kilgard
Mark Kilgard
Mark Kilgard
slide courtesy of Kavita Bala, Cornell University
Mark Kilgard
Mark Kilgard
Mark Kilgard
first try at shadow mapping
Mark Kilgard not enough shadow bias good shadow bias too much shadow bias
shadow mapping with constant bias
shadow mapping with slope-dependent bias
closed surfaces and slope-dependent bias
adding percentage-closer filtering
Light behind object Light’s “view direction” almost
direction “Dueling frusta”
Mark Kilgard eye view light view
[Möller et al. RTR]
Idea: split the view volume
Design choices
Single shadow map, 2048x2048 Four 1024x1024 shadow maps (equal memory)
Fan Zhang, Chinese U. Hong Kong
Shadow map lookups cause aliasing, need filtering As with normal maps, pixel is a nonlinear function of the shadow depth
We want to filter the output, not the input, of the shadow test
Kavita Bala, Computer Science, Cornell University
Kavita Bala, Computer Science, Cornell University
Kavita Bala, Computer Science, Cornell University
Kavita Bala, Computer Science, Cornell University
Kavita Bala, Computer Science, Cornell University
Main effect is to blur shadow boundaries
Real shadows depend on area of light visible from surface
Useful approximation: convolution
Completelylit Umbra
Michael Schwarz, SIGGRAPH 2013 Real Time Shadows course
Completelylit Umbra Penumbra
Michael Schwarz, SIGGRAPH 2013 Real Time Shadows course
Michael Schwarz, SIGGRAPH 2013 Real Time Shadows course
Averageoccluder depth
Michael Schwarz, SIGGRAPH 2013 Real Time Shadows course
Planar
(size) 50%
Michael Schwarz, SIGGRAPH 2013 Real Time Shadows course
Fernando, NVidia whitepaper ~2005