Depth-map algorithms for rendering antialiased shadows are computationally efficient and accommodate a wide variety of primitives. They have two drawbacks, however, that make them impractical for everyday use: They require the user to specify a bias that must be optimized for each particular scene and view; and they generally require the use of large shadow maps— frequently much larger than the final image that is to be rendered. This paper presents an improved depth-map shadow algorithm that does not require a bias for scenes composed of solids and produces accurate shadows with smaller depth maps. It consists of two novel changes to the basic depth-map algorithm. First, the depth map samples the depth values of surfaces that are second nearest the light source. Second, virtual samples are created on local tangent planes of surfaces that are visible from the camera's point of view to match real samples of the depth map. These two changes allow depth comparisons to be done accurately and without the need for a compensating bias value. They also allow the algorithm to produce superior results when using small depth maps. The new algorithm incorporates percentage-closer filtering to antialias shadow boundaries and can be accelerated using zbuffer hardware in the same manner as previous algorithms.
[1]
Franklin C. Crow,et al.
Shadow algorithms for computer graphics
,
1977,
SIGGRAPH.
[2]
J. Charles Hourcade,et al.
Algorithms for antialiased cast shadows
,
1985,
Comput. Graph..
[3]
Donald P. Greenberg,et al.
Polygon shadow generation
,
1978,
SIGGRAPH.
[4]
Turner Whitted,et al.
An improved illumination model for shaded display
,
1979,
CACM.
[5]
James Arvo,et al.
A survey of ray tracing acceleration techniques
,
1989
.
[6]
David Salesin,et al.
Rendering antialiased shadows with depth maps
,
1987,
SIGGRAPH.
[7]
Lance Williams,et al.
Casting curved shadows on curved surfaces
,
1978,
SIGGRAPH.
[8]
Nelson L. Max,et al.
Atmospheric illumination and shadows
,
1986,
SIGGRAPH.
[9]
Philippe Bergeron.
A General Version of Crow's Shadow Volumes
,
1986,
IEEE Computer Graphics and Applications.