Migrating From PhysX SDK 5.2 to 5.3
This guide highlights all significant parts of the API that have changed in the last release. An application with a working integration of the older version of PhysX should be able to easily migrate to the newer version by following these pointers.
Simulation
The behavior of the TGS solver with respect to the number of velocity iterations has changed. Previously TGS velocity iterations in excess of 4 were silently converted to position iterations. To preserve the old behavior any actor requesting more than 4 velocity iterations should convert excess velocity iteration counts to position iteration counts, e.g., formerly 10 position and 10 velocity iterations should become 16 position and 4 velocity iterations.
The signatures of PxScene::copyArticulationData(), PxScene::applyArticulationData(), PxScene::copySoftBodyData(), PxScene::applySoftBodyData(), PxScene::copyContactData(), PxScene::copyBodyData(), PxScene::applyActorData(), PxScene::computeDenseJacobians(), PxScene::computeGeneralizedMassMatrices(), PxScene::computeGeneralizedGravityForces(), PxScene::computeCoriolisAndCentrifugalForces() and PxScene::applyParticleBufferData() have been changed. The CUevents should now be passed in directly instead of using void pointers.
PxSceneFlag::eFORCE_READBACK was deprecated and has been removed. There is no replacement.
PxSceneFlag::eSUPPRESS_READBACK was deprecated and has been removed. Use PxSceneFlag::eENABLE_DIRECT_GPU_API instead.
Vehicles
PxVehicleTireDirsUpdate(), PxVehicleTireCamberAnglesUpdate(): instead of a reference to a PxVehicleRoadGeometryState struct, these methods now expect a ground plane normal vector and a boolean indicator for ground contact as input. The former can, for example, be extracted from PxVehicleRoadGeometryState::plane, for the latter the helper method PxVehicleIsWheelOnGround() is a recommended option.
PxVehicleTireGripUpdate(): instead of reference to a PxVehicleRoadGeometryState struct and a PxVehicleSuspensionState struct, this method now expects a friction coefficient and a boolean indicator for ground contact as input. The former can, for example, be extracted from PxVehicleRoadGeometryState::friction, for the latter the helper method PxVehicleIsWheelOnGround() is a recommended option.