Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Environment:Isaac sim IsaacGymEnvs IsaacGym Preview 4

From Leeroopedia
Knowledge Sources
Domains Reinforcement_Learning, Robotics, Simulation
Last Updated 2026-02-15 09:00 GMT

Overview

NVIDIA Isaac Gym Preview 4 physics simulator, a non-pip dependency that must be downloaded separately from NVIDIA and installed prior to IsaacGymEnvs.

Description

Isaac Gym is a GPU-accelerated physics simulation environment developed by NVIDIA for high-speed robot learning. It provides the core gymapi, gymtorch, and gymutil modules that all IsaacGymEnvs tasks depend on. Unlike standard Python packages, Isaac Gym is distributed as a standalone download from NVIDIA's developer portal and is installed via its own `pip install -e .` command. It enables massively parallel simulation of thousands of environments on a single GPU.

Usage

Use this environment for all IsaacGymEnvs workflows. Every task class imports `from isaacgym import gymtorch, gymapi` at module level. The `import isaacgym` statement in `train.py` must execute before any other IsaacGymEnvs imports, as it initializes the GPU simulation backend. This is a hard dependency with no CPU-only fallback for the simulation engine itself.

System Requirements

Category Requirement Notes
OS Ubuntu 18.04 / 20.04 LTS Linux only; Windows and macOS not supported
Hardware NVIDIA GPU Minimum RTX 2070 or equivalent; PhysX GPU simulation requires CUDA-capable GPU
VRAM 8GB+ Scales with `numEnvs`; 2000+ envs may require 16GB+
Driver NVIDIA Driver 470+ Required for Isaac Gym Preview 4
Graphics API Vulkan 1.1+ Required for rendering; `graphics_device_id` uses Vulkan device numbering

Dependencies

System Packages

  • NVIDIA GPU Driver >= 470
  • Vulkan 1.1+ SDK (for rendering)
  • `libpython3.x-dev` (Python development headers)

Python Packages

Isaac Gym Preview 4 bundles its own dependencies. It must be installed before isaacgymenvs:

# Step 1: Download Isaac Gym Preview 4 from NVIDIA developer portal
# Step 2: Extract and install
cd isaacgym/python
pip install -e .

Credentials

No API keys or credentials are required for Isaac Gym itself. NVIDIA developer account registration is needed to download the package.

Quick Install

# 1. Download Isaac Gym Preview 4 from https://developer.nvidia.com/isaac-gym
# 2. Extract the archive
tar -xzf IsaacGym_Preview_4.tar.gz

# 3. Install Isaac Gym
cd isaacgym/python && pip install -e .

# 4. Then install IsaacGymEnvs
cd /path/to/IsaacGymEnvs && pip install -e .

Code Evidence

Isaac Gym must be imported before other IsaacGymEnvs modules. From `train.py:78-79`:

    # noinspection PyUnresolvedReferences
    import isaacgym

The `# noinspection PyUnresolvedReferences` comment confirms this is a non-standard import that IDEs cannot resolve.

Core API usage from `isaacgymenvs/tasks/base/vec_task.py:37-38`:

from isaacgym import gymtorch, gymapi

Physics engine selection from `isaacgymenvs/tasks/base/vec_task.py:233-239`:

if self.cfg["physics_engine"] == "physx":
    self.physics_engine = gymapi.SIM_PHYSX
elif self.cfg["physics_engine"] == "flex":
    self.physics_engine = gymapi.SIM_FLEX
else:
    msg = f"Invalid physics engine backend: {self.cfg['physics_engine']}"
    raise ValueError(msg)

Common Errors

Error Message Cause Solution
`ModuleNotFoundError: No module named 'isaacgym'` Isaac Gym not installed Download from NVIDIA developer portal and run `pip install -e .` in `isaacgym/python/`
`*** Failed to create sim` GPU not available or driver issue Check NVIDIA driver version >= 470 and Vulkan support; verify with `vulkaninfo`
`Invalid physics engine backend: {name}` Unsupported engine string Use `'physx'` or `'flex'` (case-sensitive, lowercase)

Compatibility Notes

  • PhysX vs Flex: PhysX is the default engine. Flex is available as an alternative but has different capabilities (soft body support). PhysX is recommended for rigid body tasks.
  • GPU Pipeline: Can only be used with GPU simulation. If `sim_device` is `'cpu'`, the GPU pipeline is forcibly disabled (see `vec_task.py:83-88`).
  • Vulkan Device ID: The `graphics_device_id` uses Vulkan device numbering, which may differ from CUDA device numbering on multi-GPU systems.
  • Import Order: `import isaacgym` must appear before any `isaacgymenvs` imports in user code.

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment