|
High Dynamic Range Environment Mapping On Mainstream Graphics Hardware
IntroductionThe computer graphics industry has seen dramatic leaps in visual fidelity due to advances in hardware, memory density, and display resolution in the past decade. Researchers in computer graphics have been exploring the dynamic range of the visual display and how to best make use of its limited display range for some time now. Rendering algorithms that utilize high dynamic range (HDR) imagery is one way to better utilize the display. With programmable graphics hardware widely deployed, game developers can take advantage of these effects in their game engines. This white paper discusses the capture, storage and display of HDR images. The capability to display and process HDR imagery is widely available today – for example, in mainstream computer graphics chipsets such as the Intel® 965 Express Chipset and Mobile Intel® 965 Express Chipset family. The article also demonstrates the ability to use HDR images with the now available floating-point texture format support. This is demonstrated by environment mapping objects in a scene with HDR textures in real-time on integrated graphics processors. ![]() ![]() Figure 1-1. Tone Mapping with High Dynamic Range Images In Figure 1-1, the images above demonstrate the advantage of tone mapping with HDR images. In the top image the image is clamped for high values. By applying the tone mapping operations described in this article we are able to get an image shown in the bottom. Notice areas that are saturated in the top image appear clearly in the image The article first presents background on HDR imagery and describes the theory and the mathematics of HDR image capture and display with emphasis on Erik Reinhard's photographic tone reproduction operator. The authors then describe their own implementation of HDR environment mapping provided with this article including floating-point texture support on the Intel 965 Express Chipset and Mobile Intel 965 Express Chipset family, and a Pixel Shader 2.0 implementation of HDR tone mapping. An example of the results can be seen in Figure 1-1.
|