Do I understand normals baking right?

The cage projects vectors from the surface normal of each face. Regardless of whether the high-poly or low-poly is on top, the projection passes through both and projects the high-poly geometric normals as a texture based on the UV coordinates of the low-poly. Encoding rotations in red and green channels, and depth into the blue channel.

If I understand right, the baking in blender breaks if your cage does not have the same number of faces as your low-poly. Is this because each face of the cage only looks at a corresponding face of the low-poly? (if so how is that assigned? vertex order)?

Additionally, I often encounter this issue at acute and obtuse angles:

Does the issue occur because of how I imagine it in the picture? I always do the duplicate > select all faces > alt+s scaling to make the cage, would the solution be to move the faces closer to the intersection manually of the cage? What’s the easiest way to deal with them?

I can’t answer everything, but here are some info while someone give more insights…

No it’s basically the normal of the high poly, so a direction where the face normal points to, in 3D dimensions ( XYZ → RGB).
I think it’s basically the difference between the lowpoly and the highpoly, so if they are pointing in the same direction the bake will get a neutral color.

Not 100% sure but I highly doubt so, I think the cage help to provide a common reference frame for both high and low poly, this video helps at least to explain how it’s supposed to work :

Without getting into how it works internally.

I guess it works by looking for the closest surface point on the cage, for both high and low poly.

X = surface normals lean left/right Y = lean up/down and Z = the height of the surface normals?
surfacenormals

1 Like

Hum, not really ! What you’re describing here is a simplified way to represent what’s going on but it’s not 100% accurate.

Normals are vector and in that matter each component is meaningless without the others.
On top of that there isn’t really a notion of height in normal maps, but it’s more about how much the highpoly’s normals differs from lowpoly’s ones.
And again, normals in general aren’t about distance/height but more about in which direction a face/surface is pointing.

Is that really important ? It depends… if you start playing with these data, you probably need to have the correct mental representation and a proper understanding of vectors, a more accurate understanding might also help troubleshooting an issue you might encounter at some point…