You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm working on a chess manipulation environment in Isaac Lab where a G1 robot picks up and places chess pieces on a board. The chess board and pieces are exported from Blender as USD files.
The problem: My chess board USD has no collision — the robot's hands pass right through it. I can manually add a collision mesh in Isaac Sim (right-click → Add → Physics → Colliders), and it works perfectly. But the collision doesn't persist —
every time I reload the scene, I have to add it again.
What I've tried:
Adding rigid/collision props in the Isaac Lab spawn config:
chess_board = AssetBaseCfg(
prim_path="/World/envs/env_.*/ChessBoard",
spawn=UsdFileCfg(
usd_path="/path/to/chessboard.usdc",
scale=(0.3, 0.3, 0.3),
rigid_props=sim_utils.RigidBodyPropertiesCfg(kinematic_enabled=True),
collision_props=sim_utils.CollisionPropertiesCfg(collision_enabled=True),
),
)
Result: No effect — the robot still passes through the board.
Exporting from Isaac Sim after manually adding collider (Export Selected):
The exported USD file ends up at a completely different scale (~700 units vs the original ~2 units), so it doesn't load correctly back into the scene.
Adding physics in Blender before export (Rigid Body → Passive → Collision Shape → Mesh):
Haven't confirmed if this translates to proper UsdPhysics.CollisionAPI in the exported USD.
My setup:
Isaac Lab (from IsaacLab repo)
Blender 4.x exporting to .usdc with "Convert to USD Preview Surface" enabled
Chess board is ~2m across in Blender, scaled to 0.3 in Isaac Lab
Board should be kinematic (doesn't move, but things collide with it)
What I need:
A reliable way to either:
Export from Blender with collision baked into the USD
Or programmatically add collision (with proper mesh approximation) that persists in the USD file
Or configure Isaac Lab's spawn config to properly generate collision from the visual mesh
Has anyone successfully exported Blender models with working collision in Isaac Lab? What's the recommended workflow?
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
I'm working on a chess manipulation environment in Isaac Lab where a G1 robot picks up and places chess pieces on a board. The chess board and pieces are exported from Blender as USD files.
The problem: My chess board USD has no collision — the robot's hands pass right through it. I can manually add a collision mesh in Isaac Sim (right-click → Add → Physics → Colliders), and it works perfectly. But the collision doesn't persist —
every time I reload the scene, I have to add it again.
What I've tried:
Adding rigid/collision props in the Isaac Lab spawn config:
chess_board = AssetBaseCfg(
prim_path="/World/envs/env_.*/ChessBoard",
spawn=UsdFileCfg(
usd_path="/path/to/chessboard.usdc",
scale=(0.3, 0.3, 0.3),
rigid_props=sim_utils.RigidBodyPropertiesCfg(kinematic_enabled=True),
collision_props=sim_utils.CollisionPropertiesCfg(collision_enabled=True),
),
)
Result: No effect — the robot still passes through the board.
Adding mesh_collision_props with convex decomposition:
mesh_collision_props=sim_utils.MeshCollisionPropertiesCfg(mesh_approximation="convexDecomposition")
Result: MeshCollisionPropertiesCfg doesn't accept mesh_approximation parameter.
Exporting from Isaac Sim after manually adding collider (Export Selected):
The exported USD file ends up at a completely different scale (~700 units vs the original ~2 units), so it doesn't load correctly back into the scene.
Adding physics in Blender before export (Rigid Body → Passive → Collision Shape → Mesh):
Haven't confirmed if this translates to proper UsdPhysics.CollisionAPI in the exported USD.
My setup:
What I need:
A reliable way to either:
Has anyone successfully exported Blender models with working collision in Isaac Lab? What's the recommended workflow?
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions