Newton Articulation Root Config#
Code |
NEWTON.BA.001 |
|---|---|
Validator |
CheckStage |
Compatibility |
other |
Tags |
🔑 |
Summary#
Newton articulation roots must use standard UsdPhysics.ArticulationRootAPI and author explicit Newton self-collision configuration.
Description#
Newton imports standard USD articulation roots and resolves newton:selfCollisionEnabled on the articulation root prim. For a Newton-ready articulation:
the stage must contain exactly one prim with
UsdPhysics.ArticulationRootAPIthat articulation root must author
newton:selfCollisionEnablednewton:selfCollisionEnabledmust be a boolean valueif
NewtonArticulationRootAPIis applied, it must be applied only to the articulation root prim
This requirement keeps Newton articulation behavior authored in the asset instead of relying on importer defaults.
Why is it required?#
Makes Newton self-collision behavior explicit and portable with the asset.
Uses the Newton articulation mapping documented by the Newton USD importer.
Avoids using PhysX-only articulation attributes as Newton requirements.
Examples#
# Valid: standard articulation root with explicit Newton self-collision config.
def Xform "Robot" (
prepend apiSchemas = ["PhysicsArticulationRootAPI"]
)
{
bool newton:selfCollisionEnabled = false
}
# Invalid: Newton self-collision value is not authored.
def Xform "Robot" (
prepend apiSchemas = ["PhysicsArticulationRootAPI"]
)
{
}
How to comply#
Apply
PhysicsArticulationRootAPIto the single intended articulation root.Author
bool newton:selfCollisionEnabledon that same prim.Use
trueonly when the Newton runtime should enable self-collisions for the articulation.Do not author
newton:selfCollisionEnabledon non-articulation prims.