Shadow Buffers NVIDIAs GeForce3 Ti Graphics Processing Units (GPU) are changing the face of lighting techniques for PC graphics. NVIDIAs new GPUs are the first to bring hardware acceleration for realistic shadows to consumer PCs. Special hardware features in the texture unit of the GeForce3 Ti family enable these GPUs to create and use shadow buffers for real-time shadows. The technique of using shadow buffers has been field proven for such animated films as Columbia Pictures computer generated (CG) motion picture Final Fantasy: The Sprits Within. Until now, shadow buffering was only available on professional rendering equipment outside of the consumers reach (like SGIs Octane workstation). NVIDIA shadow buffer technology closes the gap between PC gaming and cinematic style special effects for realistic, real-time shadows. This outlines the techniques used to create and utilize shadow buffers. It also describes the unique hardware features in the GeForce3 Ti GPUs that enable this groundbreaking capability and its benefits for end users. Realistic Shadows Captivate Users The fundamental goal of computer graphics is to create the perception of an alternate reality. Graphic imagery becomes more compelling as it gets closer to replicating a real world visual experience. Until now, lighting techniques for real-time computer graphics were missing a key element: realistic shadows. Artists and photographers have always known the power of lighting and shadows. In fact, black and white film is still used for artistic photography because of the powerful effects that lighting and shadows, even without color, have on people. These same effects can be used to captivate users and draw them into real-time graphics environments.
Creating Real-Time Shadows The NVIDIA shadow buffer technique used by the GeForce3 Ti processors involves creating a map of which objects are lighted in the scene. This map is stored in a shadow buffer so that it can be used later and accessed like a texture through the special shadow buffer hardware located in the texture engine within the GeForce3 Ti GPUs. This is a block diagram that shows where the shadow buffer hardware is located in the GeForce3 Ti GPUs. While mapping the lighted areas instead of the shadowed areas may seem odd, this technique is faster and simplifies the hardware because, while there is only one lit pixel per XY location, there may be many shadowed pixels behind it. Shadow buffer support requires a number of new hardware features in the GeForce3 Ti GPU, but also leverages the general render-to-texture and texture-mapping capabilities previously implemented in the NVIDIA texture engines. As a result, shadow buffers enable the GeForce3 Ti to use texture-filtering techniques to create soft edges on shadows.
To create a shadow map, the GeForce3 GPU renders the scene from the point of view of the light, as if the viewer were located at the same position and looking inthe same direction as the light. As the GeForce3 renders the scene, it stores the depth information, or Z-value, for each pixel in the shadow buffer. The hardware has a special algorithm to bias this Z-value to avoid undesirable artifacts from precision errors. All of the objects in the scene are rendered, but only the smallest biased Z-value for each pixel is kept to ensure that the shadow buffer represents only the objects that are closest to the light. Once a shadow map is created and stored in the shadow buffer, it is ready to be used. When the GeForce3 Ti GPU renders the scene, it performs the following steps:
The following images illustrate this process visually. To render the scent in Image 1, it is necessary to first create the shadow map showing in Image 2. Not the direction of the light source in Image 1 and you'll see how teh image in Image 2 is rendered from the light's point of view. Note that Image 2 simply looks like a gray-scale image of the scene from the point of view of the light source.
Image 3 shows the shadow buffer image rendered in full color to highlight the fact that everything that is "in view" of the light, will not be shadowed; everything else is shadowed. NVIDIA Shadow Mapping Techniques There are many techniques for rendering shadows and each of them have their strengths. However, shadow mapping with NVIDIA shadow buffers has a number of key advantages over alternative shadow rendering techniques:
Conclusion NVIDIA shadow buffers represent a giant leap forward for the PC graphics industry. The unique hardware features of the GeForce3 Ti GPUs make realistic, real-time shadows available for the first time ever on consumer PCs and bridge the gap between cinema style shadow effects and the state-of-the-art for PC graphics. Appendix A - How Shadow Buffers Work
|