[Moved to Physics forum] Box 2D Trigger Triggers before actually entering trigger zone.

Cant find how to delete the post, I reposted this at the Physics

I am making a basic 2D platformer prototype. My game object is

Parent: (with rigidbody2D)

  • Colliders (4 circle colliders filling a box so it is like a box with curve edges)
  • Triggers
    °Top (box collider Trigger)
    °Bottom (box collider Trigger)
    °Right (box collider Trigger)
    °Left (box collider Trigger)

Each of this Grandchild Triggers has a script that keeps the platforms “On area” to know if I have a wall, floor or ceiling.

Non of the triggers touch the other triggers (and the script doesn’t count parent children and grandchildren collisions), top and bottom ones have a small width and left and right have a small height. (Image)

The problem comes when I run “too fast” against a wall, the top trigger triggers even if it is still not over the wall or even near it. The colliders won’t let that happen, but somehow the top trigger tries to predict next frames and triggers itself.

This is a problem since my gravity depends on where I am on the floor or if I hit a ceiling, so if I run too fast vs a wall while jumping my jump force goes to 0 and then starts going down (while it should have kept going up)

Any idea on how to prevent this from happening?

I did a debug log to name the object that is triggering the action and it is in fact the wall. (player velocity is going left)

BTW each trigger is a GameObject with parent Triggers and GrandParent Player

Also, this only happens when the player is moving “fast”, if I walk to it the top trigger does not triggers