NVIDIA / NVIDIA/simready-foundation
RB.006: It breaks when the nested rigid bodies are replaced
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 88
- Forks
- 18
- PR merge metrics
- No merged PRs in 30d
Description
Summary
The restriction on nested rigid bodies in rigid-body-no-nesting.md no longer applies in OpenUSD v25.11 and later.
Therefore, I would like you to explicitly state that this implementation follows the specifications of "OpenUSD 25.08 or earlier".
urdf-usd-converter and mujoco-usd-converter both use a unified nested rigid body structure, and applying RB.006 would break this.
I’m actually thinking that maybe we should just delete RB.006 altogether.
Background
Starting with OpenUSD v.25.11(CHANGELOG.md), it is now possible to create structures with nested rigid bodies.
Implemented the UsdPhysics proposal for allowing nested rigid bodies and articulation for kinematic bodies.
Mass Computation, parsing utility and validators are updated to support the same. (PR: #3827, #3828)
urdf-usd-converter, mujoco-usd-converter, Newton, Isaac Sim 6.0, kit-app-template (Kit 110.0 - ) ,
These have already been migrated to OpenUSD v.25.11 or later.
Nested rigid bodies are commonly used in game engines (such as Unreal Engine and Unity), and in the past, special care had to be taken when developing connectors and converters for OpenUSD.
Since this is no longer necessary in OpenUSD v25.11 and later, porting Physics structures has become significantly more efficient.
Impact of RB.006
https://github.com/NVIDIA/skills
The physical-ai-simready-conform-profile within this skills section references simready-foundation.
In this workflow, RB.006 and RB.012 are referenced as Physics joints as part of the preparation for SimReady.
If a user needs to make this USD file compatible with SimReady after converting it from URDF or MuJoCo, they will follow this workflow.
This is because Skills routes it that way.
URDF/MuJoCo to USD (urdf_usd_converter/mujoco_usd_converter) -> General validation ->
simready-validate -> simready-conform-profile
As a result, RB.006 causes the nested rigid body structure to be replaced, leading to a failure.
It seems that Skills also uses physics_rigid_bodies/validation.py for validation.
Note:
Replacement using RB.006 will be performed by LLMs such as Claude Code(Claude sonnet).
RB.006 will be loaded from skills via the LLM.
USD file containing rigid bodies with a nested structure
If we need a USD file containing a nested rigid body structure for testing, I think it would be easiest to convert the URDF model.
The following is one of the commonly used sample URDFs.
If we clone this urdf_files_dataset repository locally using git clone and load it into Isaac Sim 6.0 (5.x is not supported!), we can see the nested rigid body structure.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading rigid-body-no-nesting.md and the related RB.012 requirement, then inspect physics_rigid_bodies/validation.py and the simready-conform-profile workflow described in the issue. Resolve whether RB.006 should be version-scoped or removed, and update the specification and any validation references consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100