A weapon can have different VFXs to represent bullet impacts.

For this, similarly to the footstep VFX, you can create a BP using the base class HESurfaceVFXSelector like BP_HEGunHitVFXSelector

This new object has to be assigned on the weapon Attack component

image.png

image.png

On impact, the Physical Material of the impacted geometry will be checked and the correct VFX will be instantiated accordingly.