Keywords: property maps, bump map

Summary

This demo features an "orange" (as in the fruit) bump map applied to a built-in sphere geometry object.

Details

A "bump" map is a common method used in the computer graphics community to introduce apparent surface height variation into smooth surface. The most common example in the literature is to impart the surface height variations of an orange or golf ball onto an otherwise smooth sphere. The technique employs an image map which is used to deflect the surface normal across the surface it is mapped to using gradients in the image. Because the deflected surface normal varies, the leaving radiance of the surface exhibits patterns that mimic what would happen if the surface height (and relative angle to the camera) were actually varying. However, a bump map does not actually displace the surface of the object (it does not "push in" the surface for each golf ball dimple).

The image file is wrapped onto the "orange" sphere using the native UV coordinate system in the built-in sphere object. The image map used to drive the normal deflections is shown below.

maps/Orange-bumpmap.png
Figure 1. The image used to drive the "bumps" on the sphere.

Important Files

The entire scene is defined in the demo.odb file, using the built-in plane and sphere geometry objects. The sphere geometry object has a built-in UV coordinate system, so the bump map configuration uses the UV map projection. The scale is used to define how a digital count gradient is translated into a unit length normal vector deflection.

Setup

To run the simulation, perform the following steps:

  1. Run the DIRSIG demo.sim file

  2. Load the resulting demo.img radiance file in the image viewer.

Results

The image below shows the resulting radiance image from the simulation. The shading across the "orange" varies because the bump map manipulates the well behaved normals across the sphere in a way that mimics the surface variations a "real" orange.

images/bump_radiance.png
Figure 2. The output radiance image (min/max scaling)

The image below is the "normal to view angle" truth image, which shows how the bump map is manipulating the surface normal. The darker values are in the middle of the sphere, where the incident view angle is almost parallel to the surface normal (angle → 0). The lighter values are near the edges of the sphere, where the angle → 90 degrees. The variation of the values across the surface are created by the bump map, which is manipulating the local surface normal.

images/bump_angle_truth.png
Figure 3. The normal angle truth image (min/max scaling)

The final image shows the average Z intersection truth of each pixel, which highlights that the bump map does not change the location of the surface, but rather the normal at the surface.

images/bump_z_truth.png
Figure 4. The normal angle truth image (min/max scaling)