Issue with collision location accuray

So I’m trying to spawn explosions at the location where projectiles hit the wall. Sounds simple enough, right? Just set a callback on the collision, extract the position from the passed in results, and spawn an object there.

Here’s the problem: It’s not accurate. Sometimes it happens where it should: placing a sphere on the point where the two
objects hit. Other times it places it quite far into the wall (which I can understand, physics engines never like fast-ish objects). But when it appears sideways by half a unit or two when it is shot perpindicular to the wall and has a capsule hull aligned in the direction of travel? That shouldn’t happen.

Any ideas why this could be happening?

Here’s a place for you to see the problem Just fire a couple shots at the wall (mouse click)
Here’s the code dealing with it..

This might be an issue with using mesh collision. It would be interesting to see if you get the same issue against a box collision object?

I notice that sometime the collision goes completely through the wall too.