Abstract
In this paper, we present a new shadow mapping technique that improves the quality of perspective and uniform shadow maps. Our technique uses a perspective transform specified in light space which allows treating all lights as directional lights and does not change the direction of the light sources. This gives all the benefits of the perspective mapping but avoids the problems inherent in perspective shadow mapping like singularities in post-perspective space, missed shadow casters etc. Furthermore, we show that both uniform and perspective shadow maps distribute the perspective aliasing error that occurs in shadow mapping unequally over the available z-range. We therefore propose a transform that equalizes this error and gives equally pleasing results for near and far viewing distances. Our method is simple to implement, requires no scene analysis and is therefore as fast as uniform shadow mapping.Keywords: shadow maps, aliasing, real-time rendering
Pictures
Uniform (left), light space perspective (middle) and perspective (right) shadow maps. The second row shows images rendered from the warped light views, which also include the eye frusta (shaded transparently). Uniform shadow maps capture the distant shadow best, perspective shadow maps the near shadow, and LiSPSM work well for both. Models courtesy of www.3dcafe.com.
UNIFORM | LiSPSM | PSM |
---|---|---|
More samples
Source Code
A sample-implementation in C using GLUT for Windows/Linux is available for download
|
Source Code 2
A sample-implementation in C++ using GLUT OGLSL for
Windows/Linux is available for download
|
Video
Walkthrough through our test-scenes (46MB, 512x512, MPG-1) |
More Pictures and Videos
More Pictures and Videos |