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.
Tested Versions:
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.