PhysX crashes when linear and angular velocities aren't zero


I have a strange problem.

I have a kinematic dynamic actor, which I can move around with setKinematicTarget. But when I come near another object, PhysX crashes. I see in PVD that in the last frame, the linear and angluar velocity is not 0, 0, 0 anymore. Before it was always zero. Why is that and can that lead to the crash? I only get that it crashed in a physx dll, no debug output, no line, nothing.

I’m using PhysX 3.3.1 on VS2013 x64.

Thanks a lot

Just found, the velocities are indeed changing after each position change, so that’s ok. But why is it crashing, is there a larger bounding box which physx uses for collision detection? I have triangle meshes.


Hi. Just had similar problem. When kinematic actor trying to move on big distance with setKinematicTarget, may appear crash in physx dll. As author says - nothing in output:(


Did you solve the problem?


We had one case where small hack helped - if object teleported on big distance, I just used setGlobalPose instead setKinematicTarget. But today appear similar crash in another place where distance not so big:(

Finaly got steps to reproduce:

  1. Create a PxRigidDynamic actor with simple sphere shape and no PxRigidBodyFlag::eKINEMATIC flag set.

  2. In run-time set PxRigidBodyFlag::eKINEMATIC flag for the actor.

  3. Move actor with the help of setKinematicTarget() method fast enough. The magnitude should be around 1.5.

  4. Make it collide with PxRigidStatic actor.

After collision we get a crash on next simulation results fetching. No crash occurs if collision doesn’t happen. Magnitude of movement also seems to affect the probability of the crash. 1.5 leads to 100% reproducible crash. Very low magnitude may not crash at all.

Could you post a snippet reproducing the problem? Doesn’t repro for me.

Bug was fixed in 3.3.2 version

Perfect. My favorite kind of bug.