Normal map set to non-color gives strange behaviour


I have baked a normal map but after applying it to the low-poly version and setting it to non-color it gives a strange result, but setting it to color gives the result I would expect. This confuses me because I’ve always learned to set the normal map to non-color. Does anybody know what am I doing wrong?

Below the texture set to color

Below the texture set to non-color


You need to plug it in tangent and set it to non color

It will always depend on the way the normal map was encoded…

From your screen shot it looks that your texture was created in sRGB space… This means that a value of [0.5, 0.5, 1.0] is stored as [0.735, 0.735, 1.0].

When using ‘Color’, that value will be considered to be [0.5, 0.5, 1.0] again (approximatly).
With ‘Non-Color’, Blender will just use [0.735, 0.735, 1.0], which is far off the desired value.

Other normal textures might be linearly encoded, and then you should use ‘Non-Color’.

Thanks for the reply. I baked the normal and saved it as png rgb 16 bit. Is this the problem? How should I save it instead?

Now I know what I did wrong. I used a 32 bit image but didn’t save it as sRGB, so it stayed in linear space.

At cgcookie they explained it:

1 Like