How to make good looking impact decals on corners

I have impact decals getting spawned by weapon fire, but they look pretty bad if the impact is at a corner. It can either get cut off or warp and bleed onto the other side.

I experimented with manually placing bullet holes in corners by giving the bullet holes an angle, but I’m not sure how I’d calculate that in real time. I mostly just know the impact normal from FHitInfo. Is there a good way to compute the average surface normal in an area?

Then there’s also the issue of hitting metal, for example, but then having the decal bleed over onto adjacent glass. Ideally I’d want the glass to not even be affected by the metal impact decal.