This white paper describes techniques to generate shadows on mainstream graphics hardware in realtime. Shadows make a 3D scene more realistic and the realism is increased by the use of floating-point textures in shadow maps. This paper describes how shadow maps can be generated in graphics hardware that does not support floating point textures and those that do.
The Challenge of Animating the Artist's Dream
Figure 1 - Artist's lament: "It never looks quite the same in the game…"
Source for Michelangelo's David: Digital Imagery © copyright 2001 PhotoDisc, Inc.
Datatype color conversions are a common requirement in 3-D application pipelines. In a simple lighting scheme, these conversions happen at least once per color channel, red, green, blue (R, G, B) per vertex, and in a more realistic lighting scheme, such values are often calculated multiple times for different light components. Color conversion from single-precision floating point values to integer values is typically done by using simple casts, for example intvalR = (int)fpvalR; where intval is an integer and fpval a singleprecision floating point number.