ABSTRACT

This chapter presents a new technique for the real-time rendering of shadows with penumbrae based on shadow mapping. The method uses a screen-aligned texture that contains the distance between the shadow and its potential occluder. The chapter introduces a new soft shadow mapping algorithm for generating variable-sized penumbrae that minimizes texture lookups in order to maximize performance. This technique generates shadows with penumbrae using an anisotropic Gaussian blur filter in screen space with variable size. The idea behind this technique is simple: as a Gaussian filter is separable, it requires far fewer texture accesses than other kernel-based sampling approaches, thus improving performance. This technique provides a simplification that allows one to rapidly generate penumbrae, minimizing the number of texture accesses per pixel as based on the minimum depth texture approach. However, while this technique is able to generate plausible soft shadows in most scenes, it may not be completely accurate for some scenes with very complex shadow casters and receivers.