Quick answer: Unity URP decal projector z-fighting on curved meshes? The Decal renderer technique defaults to DBuffer which writes during opaque - switch to Screen Space and adjust depth bias.

Bullet hole decals on a cylindrical pillar flicker between the decal texture and the underlying wall - classic z-fight.

Switch the decal technique

In the Decal renderer feature, set Technique to Screen Space. DBuffer is faster but ties depth to the gbuffer, which on curved meshes drifts inside the depth bias.

Adjust depth bias

On the projector, set Mesh Bias to a small positive value (0.001 - 0.005 in world units). It pulls the decal off the surface enough to defeat the z-fight without making it visibly float.

Verify with frame debugger

Open Window > Analysis > Frame Debugger and step to the decal draw. If the depth target isn't bound to the same RT URP wrote the opaque pass to, the technique is misconfigured.

“Decals are flat; the world isn't. Bias is the cost of admission.”

For VFX-heavy scenes, decals batch poorly - consider baking the bullet hole atlas into a single MeshRenderer when you have hundreds.