1
$\begingroup$

The manual says:

Tangent space normal maps are the most common, as they support object transformation and mesh deformations. Object space normal maps keep sticking to the surface under object transformations, while World normal maps do not.

Its a bit confusing to me. I thought normals are those hair looking things that come out of faces and vertices.enter image description here

so when they say "support object transformation"??? Does that mean its possible to disconnect normals from the mesh and have them float in mid air?

Can anyone re-phrase the difference between the different normal spaces?

$\endgroup$
4
$\begingroup$

Normal maps are an encoding of a geometry inside an image. Each pixel color (RGB) corresponds to a (XYZ) orientation which defines a fake normal for each particular point defined in the UV map.

If we take the example of the cube, unwrapped like this :

enter image description here

And if we bake in the tangent space (which means the space X Y in the face plane and Z along the normal), we obtain a flat image because the encoding corresponds to the face itself (so no alteration of the normals). This is like to say "encode me in my own space coordinates" :

enter image description here

If we bake from object space, this space is unique to the cube but each tangent space of each face is orientated differently from the object space point of view. That's why we obtain this below. And you can notice that one of the face has the same color as above because this face shares the same coordinate system as the object (in this particular case) :

enter image description here

Now from the normal map node, this is the same principle but inverted. The bake encodes the coordinates and the node decodes it at the render time :

  • World space : decodes from the global (world) coordinate system. It mean that the render will change if the object (in its whole) is rotating (not sure of that last point).
  • Object space : similar to the bake above. Encoded faces normals (point by point) are translated from the whole object coordinate system
  • Tangent space : each point of each face is decoded from the face coordinate system

We have seen above that baking in tangent space gives a flat image. So this seems to be useless. But in fact this kind of bake is generally used to bake a complex object (highpoly) into a more simple one (lowpoly). Here you use the 'selected to active' option when you are baking.

So what happens after that : the image encode the highpoly normals and the "normal map" node decodes it for the lowpoly rendering. That mimics the highpoly normals along the lowpoly faces.

$\endgroup$
  • $\begingroup$ this is confusing, when you bake the normals from tangents the resulting image will actually follow the UV as for 'object' or 'world', I don't know how you managed to get this first picture but this is not what happens when you bake normals...also you don't unwrap a cube like that: haven't you been carving cubes in paper when you were in school ? =) $\endgroup$ – Yvain Aug 2 '16 at 8:53
  • $\begingroup$ @Yvain, for the first comment, just give it a try. And about the UV map, just use "smart UV project". If you mark seams and unwrap it like a cross (paper cube like) you just loose space in your texture. For the second comment, sorry but I do not understand it... Do you want to talk about it in chat ? Maybe in french ? $\endgroup$ – lemon Aug 2 '16 at 9:05
  • $\begingroup$ Actually I'm very confused about this now, I haven't been running blender for awhile and probably never really understood the mechanism behind Tangent/World/Object normal. I can see you know what you are talking about but I cannot understand it myself, now if YOU don't understand what I mean it probably means that I'm wrong.. I'm deleting this com. (always ready to chat) Have a good day ! $\endgroup$ – Yvain Aug 2 '16 at 9:50
  • 1
    $\begingroup$ each pixel has a normal that will point in the direction you choose from: Camera vs World vs Object vs Tangent d22zlbw5ff7yk5.cloudfront.net/images/… I think I got it $\endgroup$ – eromod Aug 2 '16 at 17:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.