Real-Time Soft Shadows Using a Single Light Sample

Florian Kirsch, Juergen Doellner
Hasso-Plattner-Institute for Software-Engineering at the University of Potsdam
Department of Computer-Graphics Systems Research Group
Prof.-Dr.-Helmert-Straße 2-3, 14482 Potsdam


Keywords: Soft Shadow Algorithms, Shadow Mapping, Graphics Hardware, Hardware-Accelerated Rendering


We present a real-time rendering algorithm that generates soft shadows of dynamic scenes using a single light sample. As a depth-map algorithm it can handle arbitrary shadowed surfaces. The shadow-casting surfaces, however, should satisfy a few geometric properties to prevent artifacts. Our algorithm is based on a bivariate attenuation function, whose result modulates the intensity of a light causing shadows. The first argument specifies the distance of the occluding point to the shadowed point; the second argument measures how deep the shadowed point is inside the shadow. The attenuation function can be implemented using dependent texture accesses; the complete implementation of the algorithm can be accelerated by today’s graphics hardware. We outline the implementation, and discuss details of artifact prevention and filtering.