Bump mapping is a
texture mapping
Texture mapping is a method for mapping a texture on a computer-generated graphic. Texture here can be high frequency detail, surface texture, or color.
History
The original technique was pioneered by Edwin Catmull in 1974.
Texture mappi ...
technique in
computer graphics
Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
for simulating bumps and wrinkles on the surface of an object. This is achieved by perturbing the
surface normals of the object and using the perturbed normal during lighting calculations. The result is an apparently bumpy surface rather than a smooth surface although the surface of the underlying object is not changed. Bump mapping was introduced by
James Blinn in 1978.
[Blinn, James F]
"Simulation of Wrinkled Surfaces"
Computer Graphics, Vol. 12 (3), pp. 286-292 SIGGRAPH-ACM (August 1978)
Normal mapping
In 3D computer graphics, normal mapping, or Dot3 bump mapping, is a texture mapping technique used for faking the lighting of bumps and dents – an implementation of bump mapping. It is used to add details without using more polygons. A common ...
is the most common variation of bump mapping used.
Principles
Bump mapping is a technique in
computer graphics
Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
to make a
rendered surface look more realistic by simulating small displacements of the surface. However, unlike
displacement mapping
Displacement mapping is an alternative computer graphics technique in contrast to bump, normal, and parallax mapping, using a texture or height map to cause an effect where the actual geometric position of points over the textured surface are ' ...
, the surface geometry is not modified. Instead only the surface normal is modified ''as if'' the surface had been displaced. The modified surface normal is then used for lighting calculations (using, for example, the
Phong reflection model
The Phong reflection model (also called Phong illumination or Phong lighting) is an empirical model of the local illumination of points on a surface designed by the computer graphics researcher Bui Tuong Phong. In 3D computer graphics, it is somet ...
) giving the appearance of detail instead of a smooth surface.
Bump mapping is much faster and consumes less resources for the same level of detail compared to displacement mapping because the geometry remains unchanged.
There are also extensions which modify other surface features in addition to increasing the sense of depth.
Parallax mapping
Parallax mapping (also called offset mapping or virtual displacement mapping) is an enhancement of the bump mapping or normal mapping techniques applied to textures in 3D rendering applications such as video games. To the end user, this means t ...
and
horizon mapping are two such extensions.
The primary limitation with bump mapping is that it perturbs only the surface normals without changing the underlying surface itself.
Real-Time Bump Map Synthesis
Jan Kautz1, Wolfgang Heidrichy2 and Hans-Peter Seidel1, (1Max-Planck-Institut für Informatik, 2University of British Columbia) Silhouettes and shadows therefore remain unaffected, which is especially noticeable for larger simulated displacements. This limitation can be overcome by techniques including displacement mapping where bumps are applied to the surface or using an isosurface
An isosurface is a three-dimensional analog of an isoline. It is a surface that represents points of a constant value (e.g. pressure, temperature, velocity, density) within a volume of space; in other words, it is a level set of a continuous f ...
.
Methods
There are two primary methods to perform bump mapping. The first uses a height map
In computer graphics, a heightmap or heightfield is a raster image used mainly as Discrete Global Grid in secondary elevation modeling. Each pixel stores values, such as surface elevation data, for display in 3D computer graphics. A heightm ...
for simulating the surface displacement yielding the modified normal. This is the method invented by Blinn and is usually what is referred to as bump mapping unless specified. The steps of this method are summarized as follows.
Before a lighting calculation is performed for each visible point (or pixel
In digital imaging, a pixel (abbreviated px), pel, or picture element is the smallest addressable element in a raster image, or the smallest point in an all points addressable display device.
In most digital display devices, pixels are the ...
) on the object's surface:
# Look up the height in the heightmap
In computer graphics, a heightmap or heightfield is a raster image used mainly as Discrete Global Grid in secondary elevation modeling. Each pixel stores values, such as surface elevation data, for display in 3D computer graphics. A heigh ...
that corresponds to the position on the surface.
# Calculate the surface normal of the heightmap, typically using the finite difference
A finite difference is a mathematical expression of the form . If a finite difference is divided by , one gets a difference quotient. The approximation of derivatives by finite differences plays a central role in finite difference methods for t ...
method.
# Combine the surface normal from step two with the true ("geometric") surface normal so that the combined normal points in a new direction.
# Calculate the interaction of the new "bumpy" surface with lights in the scene using, for example, the Phong reflection model
The Phong reflection model (also called Phong illumination or Phong lighting) is an empirical model of the local illumination of points on a surface designed by the computer graphics researcher Bui Tuong Phong. In 3D computer graphics, it is somet ...
.
The result is a surface that appears to have real depth. The algorithm also ensures that the surface appearance changes as lights in the scene are moved around.
The other method is to specify a normal map which contains the modified normal for each point on the surface directly. Since the normal is specified directly instead of derived from a height map this method usually leads to more predictable results. This makes it easier for artists to work with, making it the most common method of bump mapping today.
Realtime bump mapping techniques
Realtime 3D graphics
Real-time computer graphics or real-time rendering is the sub-field of computer graphics focused on producing and analyzing images in real time. The term can refer to anything from rendering an application's graphical user interface ( GUI) to ...
programmers
A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software.
A programmer is someone who writes/creates ...
often use variations of the technique in order to simulate bump mapping at a lower computational cost.
One typical way was to use a fixed geometry, which allows one to use the heightmap surface normal almost directly. Combined with a precomputed lookup table for the lighting calculations the method could be implemented with a very simple and fast loop, allowing for a full-screen effect. This method was a common visual effect
Visual effects (sometimes abbreviated VFX) is the process by which imagery is created or manipulated outside the context of
a live-action shot in filmmaking and video production.
The integration of live-action footage and other live-action foota ...
when bump mapping was first introduced.
See also
* Distance field
A distance transform, also known as distance map or distance field, is a derived representation of a digital image. The choice of the term depends on the point of view on the object in question: whether the initial image is transformed into anoth ...
* Offset surface
A parallel of a curve is the envelope of a family of congruent circles centered on the curve.
It generalises the concept of '' parallel (straight) lines''. It can also be defined as a curve whose points are at a constant '' normal distance'' f ...
* Greeble
A greeble ( ), or "nurnies", is a part harvested from plastic modeling kits to be applied to an original model as a detail element. The practice of using parts in this manner is called " kitbashing".
Etymology
The term "greeblies" was first us ...
* Normal mapping
In 3D computer graphics, normal mapping, or Dot3 bump mapping, is a texture mapping technique used for faking the lighting of bumps and dents – an implementation of bump mapping. It is used to add details without using more polygons. A common ...
References
External links
Bump shading for volume textures
Max, N.L., Becker, B.G., Computer Graphics and Applications, IEEE, Jul 1994, Volume 14, Issue 4, pages 18 – 20, ISSN 0272-1716
* ttp://www.neilwallis.com/projects/java/bump/index.php Bump Mapping example(Java applet
Java applets were small applications written in the Java programming language, or another programming language that compiles to Java bytecode, and delivered to users in the form of Java bytecode. The user launched the Java applet from a ...
)
{{DEFAULTSORT:Bump Mapping
Demo effects
Texture mapping
Virtual reality