Error in baking Normal map from object material?


When I bake a Normal map using the material that includes another Normal map I expect the new map to be the same as the original one, but there are differences between them.

1 2

Steps to reproduce the error:
• Set render to Cycles.
• Create Sphere (“high poly object”) and Plane (“low poly object”).
• Bake Normal map from Sphere to Plane (“original” Normal map).
• Connect baked texture to the Principled BSDF through the Normal Map node in low poly object material.
• Bake new Normal map in low poly object from itself (“baked_from_material”).

Is there a bug in Blender or I am doing something wrong? I guess the problem is in the Normal Map node (and Bump node too). Versions of Blender where tested: 2.83.5, 2.90.1, 2.91.0

It can be temporarily solved by this node setup:

Yeah, I’ve seen some issues with baking normal maps when not selected-to-active. Easier test: make a smooth shaded monkey, give it a 0.5,0.5,1.0 normal color, bake.

I’d recommend baking selected to active instead, even if the selected is just a copy of the object. With a tiny extrusion.

Thanks for the reply, but this recommendation does not work in this case.