Direct Installation#

First, clone the RoboVerse project:

git clone [email protected]:RoboVerseOrg/RoboVerse.git
cd RoboVerse

MetaSim uses uv to manage dependencies.

To install uv, please refer to the official guide, or run:

pip install uv

Installation Commands#

MuJoCo, SAPIEN v2/3, Genesis, and PyBullet can be installed directly via uv pip install -e ".[<simulator>]". However, IsaacLab and IsaacGym must be installed manually.

Simulator

Installation Command

Supported Python Versions

Recommended Python Version

MuJoCo

uv pip install -e ".[mujoco]"

3.9-3.13

3.10

SAPIEN v2

uv pip install -e ".[sapien2]"

3.7-3.11

3.10

SAPIEN v3

uv pip install -e ".[sapien3]"

3.8-3.12

3.10

Genesis

uv pip install -e ".[genesis]"

3.10-3.12

3.10

PyBullet

uv pip install -e ".[pybullet]"

3.6-3.11

3.10

IsaacLab v1.4

See below

3.10

3.10

IsaacLab v2

See below

3.10

3.10

IsaacGym

See below

3.6-3.8

3.8

Note

Recommended Python versions are guaranteed to work. For other Python versions, the RoboVerse team hasn’t fully tested MetaSim. Please let us know if you encounter any issues.

Please also check the prerequisites for supported platforms.

Install IsaacLab v1.4#

uv pip install -e ".[isaaclab]"
cd third_party
git clone --depth 1 --branch v1.4.1 [email protected]:isaac-sim/IsaacLab.git IsaacLab && cd IsaacLab
sed -i '/^EXTRAS_REQUIRE = {$/,/^}$/c\EXTRAS_REQUIRE = {\n    "sb3": [],\n    "skrl": [],\n    "rl-games": [],\n    "rsl-rl": [],\n    "robomimic": [],\n}' source/extensions/omni.isaac.lab_tasks/setup.py
./isaaclab.sh -i

Note

  1. pip may raise version conflicts. It doesn’t affect the usage of MetaSim.

  2. This installation method is only guaranteed to work on Ubuntu 22.04. To install on other platforms, please refer to the official guide.

Install IsaacLab v2#

uv pip install -e ".[isaaclab2]"
cd third_party
git clone --depth 1 --branch v2.0.2 [email protected]:isaac-sim/IsaacLab.git IsaacLab2 && cd IsaacLab2
./isaaclab.sh -i

Note

  1. pip may raise version conflicts. It doesn’t affect the usage of MetaSim.

  2. This installation method is only guaranteed to work on Ubuntu 22.04. To install on other platforms, please refer to the official guide.

Warning

We are trying to be compatible with both IsaacLab v1.4 and v2, but IsaacLab v2 may not work as robustly as v1.4. Known issues include new constraints on USD assets.

Install IsaacGym#

cd third_party
wget https://developer.nvidia.com/isaac-gym-preview-4 \
    && tar -xf isaac-gym-preview-4 \
    && rm isaac-gym-preview-4
find isaacgym/python -type f -name "*.py" -exec sed -i 's/np\.float/np.float32/g' {} +
cd ..
uv pip install -e ".[isaacgym]" 'isaacgym @ file:${PROJECT_ROOT}/third_party/isaacgym/python'

Note

This installation method is only guaranteed to work on Ubuntu 22.04. To install on other platforms, you can refer to the clone of the official guide.

Tip

If you encounter the error FileNotFoundError: [Errno 2] No such file or directory: '.../lib/python3.8/site-packages/isaacgym/_bindings/src/gymtorch/gymtorch.cpp', you can try to run the following command:

mkdir -p $CONDA_PREFIX/lib/python3.8/site-packages/isaacgym/_bindings/src
cp -r third_party/isaacgym/python/isaacgym/_bindings/src/gymtorch $CONDA_PREFIX/lib/python3.8/site-packages/isaacgym/_bindings/src/gymtorch

If you encounter the error ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or directory, you can try to run the following command:

export LD_LIBRARY_PATH=$CONDA_HOME/envs/metasim_isaacgym/lib:$LD_LIBRARY_PATH

where $CONDA_HOME is the path to your conda installation. It is typically ~/anaconda3, ~/miniconda3 or ~/miniforge3. You can also add it to your ~/.bashrc to make it permanent.

Combine Simulators#

Feel free to combine the above commands. For example, if you want to install MuJoCo and IsaacLab v1.4 at the same time, you can run:

uv pip install -e ".[mujoco,isaaclab]"
cd third_party
git clone --depth 1 --branch v1.4.1 [email protected]:isaac-sim/IsaacLab.git IsaacLab && cd IsaacLab
sed -i '/^EXTRAS_REQUIRE = {$/,/^}$/c\EXTRAS_REQUIRE = {\n    "sb3": [],\n    "skrl": [],\n    "rl-games": [],\n    "rsl-rl": [],\n    "robomimic": [],\n}' source/extensions/omni.isaac.lab_tasks/setup.py
./isaaclab.sh -i

Note

Every time you install multiple simulators, you need to use one single command to deal with dependencies correctly. For example, if you want to install MuJoCo, SAPIEN v3, and Genesis at the same time, you should run:

uv pip install -e ".[mujoco,sapien3,genesis]"

instead of running them one by one:

uv pip install -e ".[mujoco]"
uv pip install -e ".[sapien3]"
uv pip install -e ".[genesis]"