Decal Material

No, this doesn’t work, since the 0,0,0 value is a value that covers the bottom surface.

It appears Unreal checks if normal pin is connected when compiling the material. If not, this is another DecalBlendMode that is used. In this case, if there is no Normal input, this is DBuffer Translucent Color, Roughness that is used in place of DBuffer Translucent, Color, Normal, Roughness.

So, the way would be to have a separate opacity input just for the normal channel.

Here is a very intersting thread on the polycount forum which deals with this subject : Expanding DBuffer Decals — polycount