Skip to content

feat(schemas): collision schema-fragment API (additive)#5

Draft
vidurv-nvidia wants to merge 2 commits into
vidurv/schema-frag-frameworkfrom
vidurv/schema-frag-collision
Draft

feat(schemas): collision schema-fragment API (additive)#5
vidurv-nvidia wants to merge 2 commits into
vidurv/schema-frag-frameworkfrom
vidurv/schema-frag-collision

Conversation

@vidurv-nvidia

@vidurv-nvidia vidurv-nvidia commented Jun 5, 2026

Copy link
Copy Markdown
Owner

Description

Additive collision fragment family

Mirrors the rigid-body pilot. Stacked on the rigid-body framework branch (base will retarget to develop once that lands).

  • core: CollisionFragment, UsdPhysicsCollisionCfg (physics:collisionEnabled), apply_collision_properties (anchor CollisionAPI)
  • physx: PhysxCollisionCfg (physxCollision:* incl contact_offset/rest_offset)
  • newton: NewtonCollisionCfg (newton:contactMargin/contactGap)
  • spawner collision_props accepts a fragment list + transition bridge; legacy cfgs untouched.

Status: authored, ruff + pre-commit clean, exports verified. Not yet Isaac-Sim verified (CI / per-family sim run pending). Decision: contact_offset/rest_offset live on the PhysX fragment (Newton reads via bridge).

Fixes # (N/A — part of the staged physics schema-fragment refactor; no tracked public issue)

Type of change

  • New feature (non-breaking change which adds functionality)

Screenshots

N/A — no user-facing visual changes.

Checklist

  • I have read and understood the contribution guidelines
  • I have run the pre-commit checks (ruff + ruff-format) on the changed files
  • I have made corresponding changes to the documentation (the public API reference is auto-generated via ./isaaclab.sh -d; not separately authored)
  • My changes generate no new warnings
  • I have added tests that prove my feature works
  • I have added a changelog fragment under source/<pkg>/changelog.d/ for every touched package
  • I have added my name to CONTRIBUTORS.md

Add the additive single-namespace collision fragment family mirroring the
rigid-body pilot: the CollisionFragment marker and UsdPhysicsCollisionCfg
in core, PhysxCollisionCfg in isaaclab_physx, and NewtonCollisionCfg in
isaaclab_newton. Add the apply_collision_properties family writer that
applies UsdPhysics.CollisionAPI as the implicit anchor and dispatches each
fragment via its func.

Widen the collision_props spawner and mesh-converter slots to accept a
fragment list and add a transition bridge at every spawn site so legacy
CollisionPropertiesCfg cfgs keep working. Export the new public names from
the core, sim-level, physx, and newton stubs, add a fragment test file, and
add changelog fragments.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant