Following the documentation here, decals have the ability to blend the normals of the decal with the surface beneath it. However, in my experience, the only way to get the normals of the underlying surface to show up is if there is nothing plugged into “normal” output of the material graph. This also makes it impossible to blend a decal with a normal map to the underlying normal map. I can reduce the opacity of the decal to get a little bit of this effect, but it ends up reducing the intensity of the decal’s normals. I’ve attached a project replicating the behavior.
Steps to Reproduce
- Connect Vector3 (0,0,1) to DecalTest Material, observe underlying normals disappear.
Hello,
Thank you for reaching out.
I’ve been assigned this issue, and we will be looking into this behavior of decal normals for you.
Hello,
The blending mentioned in the documentation is the alpha-based blending you mentioned. This isn’t unique to the Normal channel, all the other channels use the same behavior.
With DBuffer decals, you can customize how a decal blends onto a surface, by creating custom blends as part of the receiving Material.
Here is an example that uses BlendAngleCorrectedNormals. Keep in mind that this is available for all DBuffer decal channels, not just Normals. Keep in mind that any channel you want to manually blend, you need to set the Decal Response on the Material to not include that channel, otherwise automatic blending will also occur.
[Image Removed]
For more information on this process, and additional considerations with Decals and normals, please see this ticket:
[Content removed]
Please let us know if this helps.