Normal map decal does not correctly align to world normals?


As seen here in the World Normal buffer visualization (and later in a normal shaded view), this decal containing a normal map does not fit to the geometry it is cast to, and instead overwrites the world normal with that of the direction the decal is facing.

Below is the (very simple but apparently incorrect) material setup being used. NOTE: for the purposes of displaying it more obviously, the alpha map was disabled for the above video, though the issue still persists with it on for obvious reasons.

This is what decals do. It’s up to you to orient and scale it correctly.

I know it doesn’t seem like it, but in other situations, that’s an advantage :slight_smile:

Sure, but here you can see it just can’t work for a curved surface like the one I’m putting it on. Unless I’m mistaken, there’s no “correct” orientation for the decal on a curved surface, since, well… the decal isn’t curved. Is there genuinely no way to do this?

Ah, sorry, wasn’t clear what aspect of ‘not fitting’ you were indicating.

No, decals don’t wrap.

It’s less about wrapping the decal itself, and more about, is there no way to have the normal map from the decal, instead of overwriting the surface normals of whatever it covers, apply relative to the surface instead?

If you want to do that sort of thing, then you could, but in the material.

You can have more than one normal map, different UVs for the second map ( so you can reposition ), and you can combine them with BlendAngleCorrectedNormals.

you’d better to preview the texture in plane mode.
你最好在材质中使用平面去预览你的材质以保证正确的方向.
if the preview is right, check the UV map which the thing you use the texture ,different uv map will cause different end about it.
如果你在预览中查看的是正确的,检查你挂载了该材质的物体的UV图,不同的UV图的大小、朝向都会使贴图覆盖上去的时候出现不同的状况。