Programatically specifying masks for turning "receive decals" on/off


Thanks for the awesome decal support ! It would make it even more great and would remove the current block towards making progress in my project if I could specify a mask on the landscape for toggling “receive decals”. I want to use a world_aligned_blend to create a mask. Any region which has a normal more horizontal than a given threshold, i.e. a cliff, should not receive decals, while any flat-‘ish’ regions should receive decals.

I thought that one way to solve this would be to use world_aligned_blend for the decal material itself and have the same cliffs drawn on the decal which would overlap with the landscape material. However this approach doesn’t work as it creates weird shading problems along with a lot of flickering on the decal. Also fresnel effects don’t work well on decal ( like those in the stylized cartoon shading example ).

Also, I am aware that there’s already a known issue with shadows on decals causing them to become transparent. A fix to that would be really appreciated too !

Many thanks again for your awesome engine !


Hi Shailen,

I went ahead and put in a feature request for the mask toggle to allow/disallow decals from being placed onto landscapes. Thank you for your feedback!