PDA

View Full Version : [newbie question] differences between bump, displacement, and normal map


whitemage7
06-16-2007, 03:39 AM
Hi all, as the stated title, can anyone explain the differences between bump map, displacement map and normal map? thanks alot :)

bonestructure
06-16-2007, 07:00 PM
I rarely use normal maps, so I'm not so hot there. But their most frequent use seems to be to apply a complex texture to a low poly model to make it look good.

Bump maps give the appearance, at render, of, well, bumps. Displacement maps actually displace the mesh. There are two kinds of displacement, at least in Max, you can actually use the map to displace a mesh, but this requires a mesh with a lot of subdivisions and leads to extremely high poly count. Sometimes very much worth it. There is also render displacement, which renders the meshes as if they were displaced. It works quite well, though it can make it difficult to place objects on surfaces accurately because the working windows don't show the amount of displacement. That's only seen upon render. Also be aware that Mental Ray seems to blow displacement maps totally out of proportion, sometimes doubling or tripling the amount of displacement you've set for render displace.

Core_Hound
06-21-2007, 09:02 AM
Hi all, as the stated title, can anyone explain the differences between bump map, displacement map and normal map? thanks alot :)

I'm gona try to make this explanation simple cuz thats how I like things explained to me, so please, dont take any offence to this.

Bump Gives the illusion of depth, best example is bricks, probelm is though, it dosent interact with lighting to well cuz the depth of it is static and dosent move.

Normal Like bump, gvies the illusion of depth, but interacts with light, so for example if you put a light over a plane with a brick texture that has a normal map and move the light around, you will see the shadow's move with the light. (See doom 3 for this, look at the blocky outline of the models but then look at the creature where it looks really detailed.)

Displacement Kind of like Bump, but instead of giving an illusion, it accualy changes the mesh during the render, so if you make an arm, you can paint veins on it then render it, you will see veins sticking out.

I hope that helps in some way.

Doddad

EricChadwick
06-21-2007, 02:54 PM
Those descriptions might be confusing, but maybe this will help...

Grayscale height maps and Normal maps are both Bump map types, just different ways of storing the bumps. Niether will change the geometry in any way, the silhouette of the model is not affected.

Geometry surfaces have these vectors sticking out of them called "normals", like perfectly straight hairs sticking up out of the skin. You probably know this already. What bump mapping does is to change and refine those normals by using the pixels of the bump map to rotate the normals in different directions. So you get different lighting across the surface.

Displacement also uses a grayscale height map, but it isn't using bump mapping, instead the vertices of the model are pushed out/pulled in from their pre-displacement positions, creating a different silhouette for the model.

Usually the mesh is also tesselated (more vertices are added) to allow the displacement map to create finer details. Some displacement shaders perform sub-pixel and adaptive tesselation, basically ways to get the most vertices at the least rendering cost.

When these new displacement vertices are being pushed in/out, their normals are perturbed too, so you are basically still changing the normals to get different lighting... except with displacement you get silhouette and self-shadowing.

There are some shader methods that do some trickery with bump mapping to fake silhouette and self-shadowing, but they never match the quality of real displacement. These shader tricks are usually used for real-time rendering in games and the like, because it's usually a lot faster to render than displacement (60 fps instead of 1 frame per hour or whatever).

I don't know if this helps out or not. :)

PenguinVisuals
06-25-2007, 12:22 AM
Bumps and normal maps are similar in that they fake more details into the surface without altering the geometry.

Bump map uses grey scale value to fake depth, giving illusion that the surface isn't flat.

Normal map is very similar to bump, except it fakes the direction of the surface. Red to turn the surface along left/right, Green to turn the surface up/down. I found normal map to be easier to be precisely controlled than bumps.

Both bump and normal will interact with lights. In game engine, real time normal map is a big thing right now while bump map isn't. I don't know why, but real time normal map in games are really amazing.

Not much to say about displacement map. This one uses grey scale to actually alter the geometry.

CGTalk Moderation
06-25-2007, 12:22 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.