Fast moving rigidbody detects collision even when it's too far from the other collider

In my project I have the following game objects:

  • one ball (rigidbody with Continous Dynamic collision detection and Sphere collider)
  • target (kinematic rigidbody, Continous collision detection and NON-convex ring shaped mesh collider)

I am moving the ball by giving big impulse.

When the ball is moving very fast, the OnColissionEnter method is being called, even though the distance is too large between the ball and the target (distance is 6-7 units, and ball collider is 1 unit).

What would be the possible reason?
Have anyone faced with similar issue?

1 Like

There is some very annoying bug that I’m also facing. Look at this:


Both bodies are just regular Boxes with BoxColliders and Rigidbodies components.

Body 1 is a Kinematic body, moved in indicated direction by MovePosition method of RigidBody in FixedUpdate.

Body 2 is also Kinematic body but it’s stationary.

Marked red are Collision Points with their normals detected by Unity, if Body 1 exceeds some speed (35 units/s in my example).

I’m not sure if this is clear from this image, but Body 1 is way above Body 2 so no collision should be registered at all!

It happens regardless of collision detection mode set in Body 1 (for Kinematic body you can only set Discreet or Continuous Speculative)

I have example project if someone is interested. Also I filed bug some time ago, but I didn’t get any feedback.

PS. I have enabled Kinematic Kinematic pairs in Physic options.

1 Like

Hi @darman77 .
Please attach the project to here. Really interesting bug.
Also send the link of reported bug.

Sure. This is bug report: https://fogbugz.unity3d.com/default.asp?1202028_e7r8bo134dhv813v (no feedback so far) and in attachment you’ll find project with two scenes for different scenarios:

  1. Kinematic vs Kinematic
  2. Kinematic vs NonKinematic.

I suspect that Discreet and Continuous Speculative (only two modes you can set for Kinematic bodies) collision detection modes are broken. I can accept that we can miss some high speed collision, but those “ghost” contacts are just ridiculous and not acceptable. Still don’t know if this is issue with Unity or PhysX.

P.S. See my other thread regarding this issue:

5262719–526532–Bug2.zip (41 KB)

1 Like