Normal Maps

I’m only just starting to figure out how to do these things and have some unexpected results.

I started with two planes. On one, I subdived it a few times, then sculpted it to create mountains and even a volcano. Next, I Baked the Normals and exported the colourful image from the UV editor… nice holographic looking reds / blues & green shades. :eyebrowlift:

When I apply this exported texture as image to the other plane, it firstmaps to colour as expected. So, I unmap from colour and instead set to NOR, as well as having “Normal Map” active in texture options.

All good so far…

I make a simple animation of a lamp moving past the plane. Works well.

However, if I make an animation of the plane spinning, the lighting does not reflect its direction. Instead, the shadows remain on the same side as if painted on as colour. :confused:

…What kind of setting would I be missing to have the normal maps not react to moving light during the animation?

If you have greens in your normal map colors, I’m assuming you did not use the “Tangent” option when baking the map and when specifying “Normal Map” in the Image panel. You should burn a Tangent Space Normal Map (TSNM) for objects which will be animated relative to light sources. The other types (Object, World and Camera) are generally for objects which remain stationary in relation to light sources.

That sounds good.
I just tried “tangent” on baking options. Result is a completely blue map… no bumps at all. :frowning:

Did you use the option that bakes the normal map relative to a low-res model (“Selected to Active”)? Also, if you’re trying to do very high relief (like mountains and a volcano) with a normal map you’ll be somewhat disappointed, as it’s intended mainly for surface features rather than in-the-round effects.

You are missing a step somwhere… I am going to try to put together a little tutorial for you but it will take some time so you will have to wait :wink:

EDIT: I tried the method you described and you were right the normal map is rendered as a solid blue color and seems uneffected by any change in topology. This must be a bug in the renderer that is attributed to flat open objects but I’m not positive on that. Anyway I tried World Mapping and it seemed to work although I would not recommend this any other time.

If you want it to work just change Tangent to world in both the bake render settings and the texture settings.


Making more sense all the time, though not there yet.

I understand that…
…the method I used to make a Normal map was correct, but only if the object remains stationary, as it gets the lighting / normal values based on world position etc. Therefore, if lights move, it works, but if the object moves, it does not.

Tangent-space method is what I’m really after as I will want to ultimately apply high-sculpted normal maps to low poly rigged characters for animation. For this I would need to map a high poly model onto the lower poly character by shift selecting both models and using the “Selected to Active” option.

My current searches lead me to… where DichotomyMatt says…

However, when I SHIFT-select the high then low, and hit “Bake” I get the error, “No images found to bake to”. I did make a new image for each mesh (high and low) in UV editor, but same result. Gotta be something simple huh?

Edit: (to the above edit) Yes, world mapping does work, until you want to rotate the object… at this point it’s not tangent relative (or whatever the term is) and the shadows don’t respect world angle. Moving lights would work, but moving the object creates problems (try animating it as a turntable… shadows appear stuck).

Man, the NiFtBt (pronounced nifty-beety) gremlin is one I struggle with every time I try to bake anything! Even my last batch of pnut butter cookies! (That was an exaggeration for comic effect, in case you didn’t notice).

Semi-seriously, though, I have no firm idea what causes NiFtBt, and I haven’t found any step by step for dumbasses like myself that puts it down in B&W. So I usually just keep trying until I manage to luck out.

Not much help. Sorry.

If you figger it out, drop me a line!

I see what you mean about the world mapping…
Like I said I believe it is a bug in the rendering engine(for tangent anyway) that is causing it show up as plain blue. I set it up myself and got the same results but I know it works that way because I have used it on many regular models such as a human head I did a while back. Anyways I think the Bug is asociated with the fact that the object is actually just a plane(open on both sides) as opposed to an object which is 3D and has an inside and outside. I am going to experiment a little on my own and see if I can come up with a solution.

Ok I tried the same method on just the default cube and still came up with the same results… This is very strange, I had the thought that maybe the sculpting was just to smooth and it wasn’t showing up well enough in the render but that was ruled out when I sculpted some very sharp points into the mesh and still nothing…:frowning:

Wow now I feel stupid…lol
I didn’t actually read the above post about Selected to Active rendering…
I tried that method and it worked great! but then the other way should work too and I still don’t have a reason why it won’t work.:frowning:
As for yours… Did you actually unwrap the UV’s of your low model becuase if you didn’t there is a good chance there is no UV layer for it.

I think the Selected to Active needs to be enabled because the Tangent bake records relative normals rather than absolutes, because the tangent space is “relative,” i.e., not tied to a coordinate system like the other types of normal bakes. That’s just a half-baked assumption, though (tryin’ hard for a guffaw here; down in flames, though) Every utility I’ve used (all 2 of 'em :spin:) bakes TS normal maps from high-level sculpt to low-res mesh.

afalldorf: Yes… I did unwrap the low pol mesh… and I also saved a UV image from it, so can’t understand the reason it’s complaining about no image when I SHIFT-select both (low pol second) and try the tangent with “Selected to Active”.

chipmasque: Yep, that’s pretty close to my understanding. The other bakes are from world / local / global coordinates and therefore don’t cooperate with rotations etc of the object.

Okay… I think I finally got there…

Even though I had been unwrapping and saving UV images, they apparently weren’t registering (as UV layers) until I decided to save one with a new base colour (on options that come up when saving UV image). This got rid of the error about no image being present when trying to bake.

Then, baking to tangent with Shift-select hi then low poly versions and "Selected to Active"on, does create a blue (instead of green) UV displacement map. (I think having the UVs of the plan flipped the wrong way may affect this… unsure until I experiment) With this new and blue UV image mapped onto a new plane as “Nor” and with Map image options (Material settings) as “normal map” and “object”, the image can now rotate and respect the lighting at the same time! :slight_smile: :yes: :slight_smile:

Might need to experiment a few times. Saving what I have now for reference, and playing with the brand new Blender 2.48 release! (And tidying my room)

Thanks for your help all. I might write up a newbie-ish tutorial on this soon, as I’m sure it’s a useful technique to get to grips with.

Thanks for your help everyone.

Jump to the new Normal Map tutorial on this thread: