Installation¶
ProtoMotions supports four simulation backends: IsaacGym, IsaacLab, Genesis, and Newton. You can install the simulation of your choice, and the simulation backend is selected via the configuration file.
Note
We recommend creating a separate virtual environment for each simulator to avoid dependency conflicts. We recommend using conda or venv for IsaacGym and Genesis, and uv for IsaacLab and Newton.
Prerequisites¶
After cloning the repository, fetch all files stored in git-lfs:
git lfs fetch --all
Choose Your Simulator(s)¶
IsaacGym¶
IsaacGym requires Python 3.8.
Create a conda environment:
conda create -n isaacgym python=3.8 conda activate isaacgym
Download IsaacGym Preview 4:
wget https://developer.nvidia.com/isaac-gym-preview-4 tar -xvzf isaac-gym-preview-4
Install IsaacGym Python API:
pip install -e isaacgym/python
Install ProtoMotions and dependencies:
pip install -e /path/to/protomotions pip install -r /path/to/protomotions/requirements_isaacgym.txt
IsaacLab¶
We recommend using uv for IsaacLab installation. IsaacLab 2.x requires Python 3.11. For full installation details, see the IsaacLab Pip Installation Guide.
Create a virtual environment with uv:
uv venv --python 3.11 env_isaaclab source env_isaaclab/bin/activate
Install PyTorch and IsaacLab:
uv pip install torch==2.7.0 torchvision==0.22.0 --index-url https://download.pytorch.org/whl/cu128 uv pip install isaaclab[isaacsim,all]==2.3.0 --extra-index-url https://pypi.nvidia.com
Install ProtoMotions and dependencies:
uv pip install -e /path/to/protomotions uv pip install -r /path/to/protomotions/requirements_isaaclab.txt
Genesis (Experimental)¶
Genesis requires Python 3.10.
Create a conda environment:
conda create -n genesis python=3.10 conda activate genesis
Install Genesis
Install ProtoMotions and dependencies:
pip install -e /path/to/protomotions pip install -r /path/to/protomotions/requirements_genesis.txt
Newton¶
Newton (currently in beta) is a GPU-accelerated physics simulator built on NVIDIA Warp. We recommend using uv for installation. For full installation details, see the Newton Installation Guide.
Requirements: Python 3.10+, NVIDIA GPU (compute capability >= 5.0), driver 545+
Clone Newton and create a virtual environment:
git clone git@github.com:newton-physics/newton.git cd newton uv venv source .venv/bin/activate
Install Newton dependencies:
uv pip install mujoco --pre -f https://py.mujoco.org/ uv pip install warp-lang --pre -U -f https://pypi.nvidia.com/warp-lang/ uv pip install git+https://github.com/google-deepmind/mujoco_warp.git@main uv pip install -e .[examples]
Install ProtoMotions and dependencies:
uv pip install -e /path/to/protomotions uv pip install -r /path/to/protomotions/requirements_newton.txt
Troubleshooting¶
IsaacGym Issues¶
libpython Error
If you encounter libpython related errors, you need to set the LD_LIBRARY_PATH to your conda environment:
# First, check your conda environment path
conda info -e
# Then set LD_LIBRARY_PATH (replace with your actual conda env path)
export LD_LIBRARY_PATH=/path/to/conda/envs/your_env/lib:$LD_LIBRARY_PATH
# For example:
export LD_LIBRARY_PATH=${CONDA_PREFIX}/lib:$LD_LIBRARY_PATH
To make this permanent, add the export command to your ~/.bashrc or ~/.zshrc:
echo 'export LD_LIBRARY_PATH=${CONDA_PREFIX}/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
Memory Issues
If you run into memory issues during training:
# Reduce number of environments in your training command
--num-envs 1024
Next Steps¶
After installation, proceed to the Quick Start guide to train your first agent or run pre-trained models.