What's the best way to apply visible damage to skeletal meshes?


I want to dynamically show the damage from sword hits in the character’s skin (wounds, etc.). I’ve been reading the forums, and googling for the best solution, and this is what I have found so far:

  1. Using Decals: Is possible to dynamically attach them to a bone, but there are two problems with this approach. First is that you have to enable DBuffer decals and earlyzpass to make them work in the shadows, which eats performance. Second is that there are some parts of the body, specially the arms, that will not show a nice result with the animation playing. For instance, if you attach the decal to the upper arm bone, and the decal is close enough to the elbow, you can see the decal “slipping” over the lower arm
  2. Blueprint to render target: I have not tried this yet, but in the Epic’s tutorial they mention that this is an overkill for wounds, and since I’m developing a VR game I’m concerned with the performance of the solution.

Do you guys know any other option that is better suited to display damage on the character skin?

It puzzles me a bit that the engine does not have (I have not found) something out of the box for this problem, I guess it has to be very common.


If you don’t need too much precision you can add wounds textures in the material and make them appear using parameters.

Thanks, unfortunately I do need some precision, as in VR it would be too visible that the damage is not in the location where you hit with the sword.

Not sure if skeletal meshes can have vertex color manipulated at runtime. Making material with vertex color blend then just painting bloody places with it could be solution, Character meshes are usually high poly.

I found this, i think it might be the solution.