What data is NORMAL_MAP expecting?

Godot Version

4.2.1

Question

I’m wondering exactly what sort of data NORMAL_MAP is expecting. It seems redundant to have this in addition to NORMAL and I was wondering if this meant that it accepted different data - ie, the raw rgb values stored in the normal map texture itself rather than requiring the shader to transform them into NORMALs. If my shader does calculate the NORMAL, can I skip using NORMAL_MAP?

I also have a number of normal maps from third parties that only include the red and green channels. While you can calculate the blue channel based on this, I was wondering if it was necessary or if NORMAL_MAP already did this for you?

bumping, because I would also like to know what the differences are.

NORMAL is the vertex normals of the mesh, it’s in the vertex part of the shader as well as available in the fragment, NORMAL_MAP is when you want to override those normals with a normal map texture, that is only in the fragment part of the shader.

Not sure what major difference you’d get if you don’t have the blue channel with something relevant, I’d try it with and without, there are some softwares out there that I think will generate those, maybe like Crazy Bump, etc.