Bump mapping is a process by which a texture, or texture map, is applied to a surface in a three-dimensional (3D) computer graphics program to create greater detail on that surface. A bump map is typically used to add a greater amount of surface dimensionality and detail, such as bumps, ridges, scratches, and other details that affect the smoothness of a surface. The use of such mapping allows an object created in a computer graphics (CG) program to appear more realistic without increasing the number of polygons in the object. Bump mapping is typically accomplished through the use of traditional bump maps, normal maps, or parallax maps.
When an object is created in a 3D graphics program, it is made using a wireframe to which polygons are applied. This creates the basic shape of the object and provides it with a surface. Complicated objects often have more polygons than simple objects, but higher numbers of polygons often make objects more difficult to render out. This is not always a concern for CG created for movies, but video games that render images in real time often have limitations on the number of polygons that can be rendered in a given scene.
Bump mapping is typically used to allow objects with lower numbers of polygons to appear more realistic. A single surface, for example, can be used to create a brick wall and would have only one polygon. To make the surface appear realistic, each brick would need to stick out slightly further than the mortar between them, and they should have some dents, scratches, and other textures. By using bump mapping, these details can be added without increasing the number of polygons in the scene.
There are three different types of bump mapping that can be used, though they all generally create somewhat similar effects. A basic bump map uses a grayscale image — using only white, gray, and black — to create a map. When this texture is applied as a bump map, the object will appear to have greater texture; white areas will appear raised, while black areas will seem indented. This type of bump mapping does not actually change the surface of the object, only the way in which light and shadow are rendered on that surface to give it the appearance of texture.
A normal map is a type of map used in bump mapping that uses red, blue, and green to create a similar effect. Normal maps are usually created based on a highly detailed version of an object, and then applied to a low detail version of that object to create a more realistic appearance with fewer polygons. Parallax maps can also be used in bump mapping, though these are somewhat more complicated. They basically function by mimicking the parallax effect that occurs when an object is seen from different points of view, to create the illusion of depth for a surface when viewed at an angle.