一键导入
simready-foundation-conform-fet-003-rigid-body-physics
Use for repairing SimReady rigid-body and collider conformance for neutral or PhysX prop assets.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use for repairing SimReady rigid-body and collider conformance for neutral or PhysX prop assets.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Add SimReady capability docs, requirement indexes, validation stubs, and registrations for new requirement families.
Use for adding SimReady feature adapters that mutate USD assets between exact feature or profile versions.
Use for adding SimReady feature docs, manifests, requirement mappings, validation strategy, and index entries.
Use for adding SimReady profile versions with feature bundles, docs, indexes, and validation notes.
Use for adding atomic SimReady requirements with stable IDs, docs, examples, indexes, and validator follow-up.
Use for adding SimReady runtime tests, runner expectations, batch/job/report notes, and validation evidence.
| name | simready-foundation-conform-fet-003-rigid-body-physics |
| description | Use for repairing SimReady rigid-body and collider conformance for neutral or PhysX prop assets. |
| license | Apache-2.0 |
| metadata | {"author":"Shaad Boochoon <sboochoon@nvidia.com>","tags":["simready","conformance","physics"]} |
Use this workflow skill after FET000_CORE and FET001_BASE_NEUTRAL pass and the next profile validation gate is FET003_BASE_NEUTRAL or FET003_BASE_PHYSX. It brings a staged USD asset toward the SimReady rigid body physics contract while preserving visual hierarchy, physical scale, and source traceability.
This is an authoring and repair skill, not the final validator. Work on a staged copy under the requested output directory, rerun the same validation gate after each repair stage, and stop at the first remaining FET003 validation failure that needs user intent or upstream conversion data.
Read the source-of-truth files named below before editing. Work on staged outputs where the skill requires them, and keep validation evidence with the result.
Before changing an asset, load the exact FET003 manifest selected by the profile:
nv_core/sr_specs/docs/features/FET_003_base_neutral-0.1.0-rigid_body_physics.jsonnv_core/sr_specs/docs/features/FET_003_base_physx-0.1.0-rigid_body_physics.jsonnv_core/sr_specs/docs/features/FET_003_base_physx-0.2.0-rigid_body_physics.jsonnv_core/sr_specs/docs/features/FET_003-rigid_body_physics.mdTreat the selected JSON manifest as authoritative for the required IDs. If the markdown, manifest, validator, or report disagree on a requirement ID, follow the validation report for the current gate and call out the mismatch in the stage summary.
For per-requirement repair details, read references/fet003-requirements.md when a FET003 validation report or inspection identifies matching failures.
Collect these before editing:
| Input | Requirement |
|---|---|
usd_asset | Required .usd, .usda, .usdc, or unpacked USD-family asset to repair. |
output_root | Required or inferred folder for staged assets and reports. |
simready_profile | Profile being validated, such as prop-robotics-neutral, prop-robotics-physx, or another profile that includes FET003. |
profile_version | Profile version, if supplied by the user or validation command. |
validation_report | Preferred JSON or markdown report from the failing profile or feature validation gate. |
fet003_variant | Selected feature ID and version, such as FET003_BASE_NEUTRAL@0.1.0 or FET003_BASE_PHYSX@0.2.0. Infer from the profile when possible. |
rigid_body_policy | Whether the asset should behave as one rigid body, multiple independent bodies, or an articulated/multibody asset. Default to one rigid body only when the profile and asset structure make that clear. |
collider_strategy | Explicit strategy for collision geometry: existing collider meshes, visual mesh reuse, simplified proxy geometry, primitive proxy, PhysX mesh merge, or block for user choice. |
mass_source | Explicit mass value, property report, source metadata, or user-approved default. Do not invent physical mass silently. |
Use this checklist when changing the repository:
simready-foundation-conform-fet-000-core or simready-foundation-conform-fet-001-minimal first.output_root; do not mutate the source unless the user explicitly asks for in-place repair.UsdPhysics.RigidBodyAPI, CollisionAPI, MeshCollisionAPI, and MassAPIUsdPhysics.RigidBodyAPI only to valid UsdGeomXformable body roots.UsdPhysicsCollisionAPI only to valid collider prims for the selected FET003 variant.UsdPhysicsMeshCollisionAPI only where allowed by the selected neutral or PhysX rule.purpose = "guide".Example request:
Repair FET003 rigid body physics failures on a prop USD asset.
Expected result summary:
staged_asset: repaired copy or output directory
validation: selected feature/profile gate and report path
remaining_failures: next failing requirement IDs, if any
Make automatic repairs only when the intended result is mechanical and locally verifiable:
UsdPhysics.RigidBodyAPI to a single xformable asset root when the asset is clearly a one-piece movable rigid body.CollisionAPI from an invalid Xform to a descendant Gprim only when that descendant is the clear collision representation.CollisionAPI to existing dedicated collider geometry when naming, purpose, or hierarchy clearly identifies it as collision geometry.MeshCollisionAPI to meshes only when mesh collision is the selected collider strategy and CollisionAPI is also present.purpose = "guide" on invisible collision-only mesh geometry.RigidBodyAPI, CollisionAPI, or MeshCollisionAPI from invalid prims only when a valid replacement is authored in the same staged asset or the API is plainly accidental.Block and report instead of guessing when:
For FET003_BASE_NEUTRAL, prefer standard OpenUSD UsdPhysics schemas and avoid PhysX-only collider patterns. CollisionAPI belongs on UsdGeomGprim prims, and mesh-specific collision belongs on UsdGeomMesh prims that also have CollisionAPI.
For FET003_BASE_PHYSX, follow the selected manifest version. PhysX variants may allow CollisionAPI or MeshCollisionAPI on a mesh-merge Xform when PhysxMeshMergeCollisionAPI is applied and the collisionmeshes collection resolves to at least one Gprim. Do not use PhysX-only repairs for a neutral profile.
Preserve reports under the staged output directory. If the Physical AI Skill Hub validation commands are available, use the same profile gate that exposed the failure:
uv run --python 3.12 validate-simready-profile <staged-usd> \
--profile <profile> \
--profile-version <version> \
--foundation-root <simready-foundation-root> \
--foundation-spec-root <simready-foundation-root>/nv_core/sr_specs/docs \
--report <output-root>/simready-profile-after-fet003.json
Count this skill as successful when the selected FET003 variant passes, even if the full profile still fails on later features. Report those remaining failures as handoff work for their own skills.
assets/openai.yaml preserves optional UI metadata for clients that read skill display hints. It is not required for the workflow.references/ contains detailed requirement notes; load only the files needed for the active validation failure.Report:
| Field | Meaning |
|---|---|
input_usd_path | Original USD path. |
output_usd_path | Latest staged/repaired USD path. |
profile and profile_version | Validation target. |
fet003_variant | Selected FET003 feature ID and version. |
rigid_body_roots | Prims with UsdPhysics.RigidBodyAPI after repair. |
collider_prims | Prims with collision APIs after repair. |
mass_source | Source of authored mass values, or why mass repair was blocked. |
requirements_repaired | Requirement IDs changed by this skill. |
requirements_blocked | Requirement IDs that need user intent, property data, or upstream conversion. |
validation_report | Path to the rerun validation report. |
next_step | Usually the next failing profile feature or a blocked FET003 requirement. |
Keep the user-facing summary short: what rigid-body data changed, which FET003 variant was validated, what still fails, and the first validation gate that blocks progress.