embodiedgen/docs/tutorials/any_simulators.md

2.6 KiB

🎮 Use EmbodiedGen in Any Simulator

Leverage EmbodiedGen-generated assets with accurate physical collisions and consistent visual appearance across major simulation engines — IsaacSim, MuJoCo, Genesis, PyBullet, IsaacGym, and SAPIEN.

!!! tip "Universal Compatibility" EmbodiedGen assets follow standardized URDF semantics with physically consistent collision meshes, enabling seamless loading across multiple simulation frameworks — no manual editing needed.


🧩 Supported Simulators

Simulator Conversion Class
IsaacSim MeshtoUSDConverter
MuJoCo / Genesis MeshtoMJCFConverter
SAPIEN / IsaacGym / PyBullet .urdf generated by EmbodiedGen can be used directly

!!! note "Simulator Integration Overview"

This table summarizes the compatibility of EmbodiedGen assets with various simulators:

| Simulator | Supported Format | Notes |
|-----------|-----------------|-------|
| IsaacSim | USD / .usda | Use `MeshtoUSDConverter` to convert mesh to USD format. |
| MuJoCo | MJCF (.xml) | Use `MeshtoMJCFConverter` for physics-ready assets. |
| Genesis | MJCF (.xml) | Same as MuJoCo; fully compatible with Genesis scenes. |
| SAPIEN | URDF (.urdf) | Can directly load EmbodiedGen `.urdf` assets. |
| IsaacGym | URDF (.urdf) | Directly usable. |
| PyBullet | URDF (.urdf) | Directly usable. |

🧱 Example: Conversion to Target Simulator

from embodied_gen.data.asset_converter import cvt_embodiedgen_asset_to_anysim
from embodied_gen.utils.enum import AssetType, SimAssetMapper
from typing import Literal

simulator_name: Literal[
    "isaacsim",
    "isaacgym",
    "genesis",
    "pybullet",
    "sapien3",
    "mujoco",
] = "mujoco"

dst_asset_path = cvt_embodiedgen_asset_to_anysim(
    urdf_files=[
        "path1_to_embodiedgen_asset/asset.urdf",
        "path2_to_embodiedgen_asset/asset.urdf",
    ],
    target_dirs=[
        "path1_to_target_dir/asset.usd",
        "path2_to_target_dir/asset.usd",
    ],
    target_type=SimAssetMapper[simulator_name],
    source_type=AssetType.MESH,
    overwrite=True,
)
simulators_collision

Collision and visualization mesh across simulators, showing consistent geometry and material fidelity.