To export to robotics simulation, install Infinigen using the command:
pip install -e ".[sim]"
To export articulated assets to the MJCF/URDF/USD file formats, we provide the following command.
./scripts/spawn_sim_ready_asset.sh {asset name} {number of instances} {mjcf/urdf/usd}For instance, to generate 10 instances of all available assets in the MJCF file format, run the following scripts.
./scripts/spawn_sim_ready_asset.sh door 10 mjcf
./scripts/spawn_sim_ready_asset.sh dishwasher 10 mjcf
./scripts/spawn_sim_ready_asset.sh lamp 10 mjcf
./scripts/spawn_sim_ready_asset.sh multifridge 10 mjcf
./scripts/spawn_sim_ready_asset.sh multidoublefridge 10 mjcf
./scripts/spawn_sim_ready_asset.sh toaster 10 mjcfTo view the most updated list of included articulated assets, please see OBJECT_CLASS_MAP in infinigen/assets/sim_objects/mapping.py. Each key in the map corresponds to an articulated asset. Note that singlefridge and doublefridge are used by multifridge and multidoublefridge and are not meant to be used on their own.
This section details how to run a robotics simulation in an exported Infinigen scene using NVIDIA IsaacSim. For more information on scene generation or export, refer to Hello Room or Exporting to External File Formats.
First, create and export a scene with the commands below:
python -m infinigen_examples.generate_indoors --seed 0 --task coarse --output_folder outputs/indoors/coarse -g overhead_singleroom.gin -p compose_indoors.terrain_enabled=False restrict_solving.solve_max_rooms=1 python -m infinigen.tools.export --input_folder outputs/indoors/coarse --output_folder outputs/my_export -f usdc -r 1024 --omniverseDownload IsaacSim from NVIDIA Omniverse and set up an IsaacSim conda environment by running the following commands in your IsaacSim Directory (typically ~/.local/share/ov/pkg/isaac_sim-2023.1.1)
conda env create -f environment.yml
conda activate isaac-sim
source setup_conda_env.shImport scene and run a simulation
python {PATH_TO/isaac_sim.py} --scene-path outputs/my_export/export_scene.blend/export_scene.usdc --json-path outputs/my_export/export_scene.blend/solve_state.json solve_state.json. Scenes can be imported without a solve_state.json, but all objects will be static colliders.