A practical and robust bump-mapping technique for today’s GPU’s

Mark J. Kilgard · 2010

Bump mapping is a normal-perturbation rendering technique for simulating lighting effects caused by patterned irregularities on otherwise locally smooth surfaces. By encoding such surface patterns in texture maps, texture-based bump mapping simulates a surface’s i rregular lighting appearance without modeling the patterns as true geometric perturbations to the surf ace. Bump mapping is advantageous because it can decouple a texture-based description of small-scale surf ace irregularities used for per-pixel lighting computations from the vertexbased description of large-scale object shape required for efficient transformation and rasterization. This paper describes a practical and robust bump-mapping technique suited for the capabilities of today’s Graphics Processor Units (GPUs). This paper has six sections including the introduction. The second section presents the theory of bump mapping. The third sec tion reviews several existing hardware bump-mapping techniques. The fourth section describes the cube map texturing and “register combiners ” features of NVIDIA’s GeForce 256 and Quadro GPUs. These features in combination are the basis for the bump mapping technique presented in the fifth section. This technique achieves real-time performance on current generation NVIDIA GPUs. The techniqu e can model ambient, diffuse, and specular lighting terms, a textured surface decal, and attenuated and spotlight illumination. The technique is notable because of its r obustness and relative fidelity to Blinn’s original mathematical formulation of bump mapping. The sixth section concludes. Several appendices provide OpenGL implementation details.

Read the paper · More papers on PaperTik