Mesh decals distance problem

Thanks vebski ! I’ve removed “Output.Position.z += 0.0001f * Output.Position.w;” Now it seems to work perfectly for what I need.
Here’s an exemple of great mesh decals in Blizzard Overwatch :
48ddc56d9713670c0b06f162ddbea57d1ed96d1b.jpeg
As you can see, they have big offsets probably to avoid Z-fighting but in game you don’t see it if you don’t look really close.