A very simple scene. There is a kinematic actor A moving along a circle path by using setKinematicTarget every frame, and keep facing the center of the circle. Mainwhile, another dynamic actor B is moving near the center of the circle. Both of A and B are convex shape, they should never collide with each other as they were designed. But when A moved to a certain point on the circle, the physx simulation did generate a collision pair between them, which cause B act as crash into an air wall. I've tracked the data in onContact() callback, the global pose of the two actors were both correct, the contact point is on A, but far away from B. It's unreasonable for this collision pair to be generated while the two actors are even not overlapped. Besides, this problem dont show up when using setGlobalPose(3.3.2) or moveGlobalPose in 2.8.x. Not only for this example, it seems to happen on almost every moving object using setKinematicTarget in my application. It's a bug of physx? Or there is something specific for using setKinematicTarget i dont know?
The problem disappeared by removing PxPairFlag::eDETECT_CCD_CONTACT from pairFlags in scene’s filterShader.