


Calculate the surface normal of the heightmap, typically using the finite difference method.Look up the height in the heightmap that corresponds to the position on the surface.

The steps of this method are summarized as follows.īefore a lighting calculation is performed for each visible point (or pixel) on the object's surface: This is the method invented by Blinn and is usually what is referred to as bump mapping unless specified. The first uses a height map for simulating the surface displacement yielding the modified normal.

There are two primary methods to perform bump mapping. This limitation can be overcome by techniques including displacement mapping where bumps are applied to the surface or using an isosurface. Silhouettes and shadows therefore remain unaffected, which is especially noticeable for larger simulated displacements. The primary limitation with bump mapping is that it perturbs only the surface normals without changing the underlying surface itself. Parallax mapping and horizon mapping are two such extensions. There are also extensions which modify other surface features in addition to increasing the sense of depth. The modified surface normal is then used for lighting calculations (using, for example, the Phong reflection model) giving the appearance of detail instead of a smooth surface.īump mapping is much faster and consumes less resources for the same level of detail compared to displacement mapping because the geometry remains unchanged. Instead only the surface normal is modified as if the surface had been displaced. However, unlike displacement mapping, the surface geometry is not modified. This models a sphere with a bumpy surface with the result that both its outline and its shadow are rendered realistically.īump mapping is a technique in computer graphics to make a rendered surface look more realistic by simulating small displacements of the surface. On the right, the same function is used to modify the surface of a sphere by generating an isosurface. On the left, a mathematical function defining a bump map simulates a crumbling surface on a sphere, but the object's outline and shadow remain those of a perfect sphere. Bump mapping is limited in that it does not modify the shape of the underlying object.
