All three types of maps have similar end products, but do so with different methods and with some distinct differences.
Bump Maps and Normal Maps are the two most similar. Both are used to provide fake depth information within the bounds of the 3D model itself. By within the bounds of the mesh I mean the texture maps won't affect the actual geometry of the mesh and thus doesn't change the silhouette of your model.
Bump maps are grayscale while Normal Maps are using RGB values. Both simulate the smaller details on your model like skin pores, small wrinkles in clothing, cracks, and other depth information on the model.
Without getting too technical with Normal maps, the RGB values dictate how light is reflected off the surface depending on the direction of the light. Here's what each of the color channels do:
- The Red Channel shows how the object should look when lit from the right.
- The Green Channel shows how the object should look when lit from above.
- The Blue Channel shows how the object should look when lit from the front.
Displacement maps are also for providing depth information from a grayscale texture on the surface of the model, but what makes displacement different is its ability to actually "displace" or move the verteces of the model. Essentially you could take a displacement map of a gravel road with different sized rocks and pebbles and apply it to a semi-high resolution mesh, but completely flat mesh and the verteces of the mesh would move/displace once rendered.