Two rigid-body Cubes on a spherical joint#

Multi-prim test composition: two Cube rigid bodies one unit apart (B translated +3 in x, half extents 0.5) joined by a PhysicsSphericalJoint with a swing cone limit and PhysX cone tuning whose local frames meet halfway between them. The bodies are not verified; the joint prim is. Standalone joints are PxD6Joint at runtime (distance joints PxDistanceJoint); the PhysxJointAPI, PhysxJointAxisAPI, PhysicsJointStateAPI and PhysxDrivePerformanceEnvelopeAPI columns target the articulation joint and are unobservable here (NaN on both sides), see the articulation compositions. Owns no columns and generates no helper.

  • Form: multi-prim; no helper, the contract test builds each prim with PrimBatch.

Path

Type

Applied APIs

Authored values

Relationships

Verified

/World/A

Cube

PhysicsRigidBodyAPI, PhysicsCollisionAPI

size

no

/World/B

Cube

PhysicsRigidBodyAPI, PhysicsCollisionAPI

size, omni:xform

no

/World/Joint

PhysicsSphericalJoint

PhysxJointAPI, PhysxLimitAPI:cone, PhysxJointAxisAPI:rotX, PhysxJointAxisAPI:rotY, PhysxJointAxisAPI:rotZ

physics:localPos0, physics:localPos1, physics:coneAngle0Limit, physics:coneAngle1Limit

physics:body0 -> /World/A, physics:body1 -> /World/B

yes

Notes#

  • physics:coneAngle0Limit/coneAngle1Limit are authored in every variant because the absent-column stage is not simulable: the consumer activates a zero cone that PxD6Joint::setSwingLimit rejects as ‘limit invalid’ (see the PhysicsSphericalJoint finding), and the test bootstrap turns the PhysX error into a fatal failure. The absent-cone defect is therefore documented, not exercised, by this composition.