(new to unreal). I have a problem with some physics collisions I’ve setup. What this is trying to simulate is the following.
Imagine a physical checker board, with some checks on in. You can flick a checker at another checker. The goal is to knock the second checker off the board (while, ideally, keepings yours on the board).
The problem I am having is that the flicked pieces often end up going directly under the target pieces. Here’s a picture:
Obviously the velocity here matters, although I don’t think it’s behaving “realistically”, which is what I am trying to achieve. I can’t just restrict the Z axis movement, because I want the pieces to be able to move up and down.
Is there something obvious I can do here. In the picture above, the checker that’s flicked should hit the green checker on the bottom and make it move as well (instead of just passing under it).
And if I apply less force, then it does the right thing. The trick seems to be in applying just the right amount force to avoid this behavior but still be enough to knock the other piece forward.
The way this is implemented is that I get the force vector from the end of the pink arrow back to the beginning point. It is multiplied by a float constant (to provide more force) and then that force is applied directly to the checker actor.
Fascinating… see picture. :). The floor is made up of individual squares, but above the floor is a single BlockingVolume that the checkers are sliding across. This is the collision settings on the volume:
Interesting. I’m not really sure but maybe the blocking volume is causing this? Why don’t you just set a simple collision for the floor? I kinda feel like the volume is making them float a little, thus causing this. But as I said, not sure, however, maybe it will help.
The floor is made up of many actors (each square), so each one has its own collider. Trying to slide the checkers across the floor directly causes a different problem, where they will catch on the edges and suddenly stop, or flip for no reason. So I put the volume there to try and work around that for now.
If each square is a static mesh you can select them all and combine it into one, unless you need them separately. But as I said, I’m not really sure what’s causing this but my bet is on collision.
Edit: I also just noticed that your checker mesh has convex collision which might also be causing the issue where it slides under. Try removing the collision from the static mesh and just wrap it around with a simple box to test it out imo!