Best method of applying a decal to a mesh permanently?

I need a way to apply decals to a mesh permanently so that when an object is moved, removed, or picked up and placed elsewhere, the decal will still be applied to it as it was before. I’ve tried doing this with material layer blending, but I could not figure out if I could achieve it that way as it kept turning out with a very black colored texture instead of the result I needed… Further even if material layer blending were to somehow work, it was such a complicated process that it will be to much of a hassle doing that for each and every decal, which will end up being thousands of different decal variations. Basically for one example I need to layer a normal map on top of another normal map for a damaged mesh effect. This works when using the decal normally in the level but again it will be an issue when moving, removing or replacing said meshes during game play. I heard there was some mesh decal method but I found no explanation on how to do this, I also heard it was a hassle with LOD. Thank you for your insight in advance.

This is very simple. All you need to do is make the decal a child to the mesh you want it applied to. If you’re not sure how to do this, simply drag the decal actor in the world outliner to the mesh you want it to apply too and it should become a child do it. Thus giving you the result you’re looking for. Let me know how it goes!

Thank you so much! I think that worked, in the editor at least, I’m going to try it now during gameplay as well. If I find more questions about it after more testing I will let you know, thank you! :slight_smile:

Glad it worked! It replicate in the final output too. I had to use this method in a project and discovered it by accident myself but it worked a charm!

It worked during gameplay like you said, I just need to figure out why it’s not working when I pick up the mesh and drop it during gameplay, it isn’t showing up for some reason. It does show up before I pick it up though so there is some progress. I was testing it by using it in a blueprint.