Known Physics Limitations#
These are known limitations of the underlying PhysX engine that apply to scenes simulated by ovphysx, with recommended workarounds. Limitations of Kit-only features such as force fields or the asynchronous scene-update mode are omitted, because they are not reachable through ovphysx.
Two solver names recur below. TGS (Temporal Gauss-Seidel, the default) and PGS
(Projected Gauss-Seidel) are the two PhysX solver types, selected per scene on
physxScene:solverType; refer to
Physics Solver for how to
author the choice and its iteration counts. “None known” in the last column means
no workaround exists today, not that the entry is unfinished.
Each feature name links to the page that covers how to author it:
Feature |
Limitation |
Recommended workaround |
|---|---|---|
Particle / deformable contact reports |
Particles and deformable bodies do not support contact reports. |
None known. |
Simulation-resume determinacy |
Replaying from an in-contact state saved mid-run can be nondeterministic; internal contact state persists across steps and is not serialized to USD. |
Restart simulations from the beginning for determinism. |
Deformables and particles do not contact conveyor surfaces (fall through); conveyor against SDF triangle-mesh dynamics is inadequate. |
Use rigid bodies with non-SDF collision geometry for conveyors. |
|
Deformable / particle static friction |
Static friction is not supported. |
Use a sufficiently high dynamic friction. |
Deformable / particle friction combine mode |
Friction combine mode is not supported; interactions use the actor’s dynamic friction. |
None known. |
Particle roll-off |
Particles can roll off flat surfaces perpendicular to gravity due to solver ghost forces. |
None known. |
Simulation fidelity can be inadequate; incoming joint force is excessively high with nonzero TGS velocity iterations. |
Fixed tendons: use mimic joints. Spatial tendons: apply external forces to links. Force sensing: use TGS with zero velocity iterations. |
|
GPU-compatible convex hulls are limited to 64 vertices and faces, which can yield a poor approximation. |
Use convex decomposition or an SDF triangle mesh to capture detail (at higher cost). |
|
Spherical articulation joints with non-identity COM |
Limits and drives may not respond correctly for some joint-state ranges when the link has a non-identity mass frame. |
Transform the asset so the prim and mass frames coincide (identity mass frame). |
The SDK no longer silently converts velocity iterations above four into position iterations (a warning is issued); this can change behavior. |
Manually convert velocity iterations above four to position iterations, set zero or very few velocity iterations, or use PGS. |
|
Does not behave exactly as expected with the TGS solver, and works poorly with TGS plus velocity iterations. |
Use PGS for drive issues; with TGS, favor position iterations and use zero velocity iterations. |
|
Articulation loop-closing with D6 joints |
Simulation can become unstable. |
Increase timesteps-per-second and articulation solver iterations; try PGS and TGS; avoid high drive gains competing with stiff constraints. |
Effective joint friction can differ between PGS and TGS; the friction model may not suit all applications. |
Emulate velocity-proportional dynamic friction with a joint drive at zero target velocity and suitable damping. |
|
Joint properties (articulation compared to non-articulation) |
Certain joint properties are available only when a joint is (or is not) part of an articulation; console warnings indicate mismatches. |
Use or avoid articulations depending on the property your simulation relies on. |
Articulation joint drive with TGS |
The drive can reach steady state but report a non-zero joint velocity. |
Enable |
For tuning guidance that works around several of these at once, refer to Articulation Stability and Collision Behavior.