ABSTRACT

This chapter presents a technique for generating soft shadows based on shadow maps and screen space image filtering. The main idea is to use a mipmap to represent multifrequency shadows in screen space. The mipmap has two channels: the first channel stores the shadow intensity values and the second channel stores screen-space penumbrae widths. Filtering via mipmapping has been used in previous shadow-map techniques such as convolution shadow maps and variance shadow maps. In addition to storing multi-frequency shadows, the mipmap is exploited to propagate occlusion information obtained from the occluder and the shadowed surface. Occlusion information is used to select the shadow frequency as an index to a level in the mipmap. The efficiency of the mipmap filtering and the screen-space computations make it possible to create penumbrae covering large areas, expending little computational overhead, and performing no stratified sampling.