Isaac Lab 3.0 Beta 2 🚀
Isaac Lab 3.0 Beta 2 is a stabilization and enablement release for the Isaac Lab 3.0 beta development. It builds on v3.0.0-beta with additional features and improvements on Newton support (VBD, solver coupling, Kamino, rough terrain, sensors), multi-backend physics, simplified training and installation commands, kit-less workflows, visualizers, rendering, teleoperation, learning exports, installation, CI, and documentation.
This release is compatible with the latest release of Isaac Sim 6.0.
This is a beta release. The develop branch is still under active development and may continue to receive breaking changes, error-message changes, or performance tuning before the final 3.0 release. Please check out the
developbranch for the latest development updates.
✨ Highlights
Multi-Backend Stabilization
The multi-backend architecture introduced in the first 3.0 beta has been hardened across PhysX, Newton, OVPhysX, Isaac RTX, OVRTX, and kit-less execution paths. This release improves backend selection, scene-data routing, clone-plan handling, sensor reset behavior, runtime compatibility checks, and error reporting when unsupported physics, renderer, or visualizer combinations are requested.
Newton Physics & Kit-Less Workflows
Newton and OVPhysX support have been expanded and stabilized for larger kit-less training and visualization workflows:
- Adds Newton ray-caster, frame-transformer, IMU/PVA, contact, joint-wrench, deformable, and VBD-coupling support across the relevant packages.
- Adds Newton rough-terrain locomotion presets for quadrupeds and bipeds, plus additional MJWarp presets for manipulation, navigation, and Spot environments.
- Adds documentation for Newton installation, supported features, MJWarp, Kamino, VBD, solver comparison, Warp environment migration, and the Newton manager abstraction.
- Fixes heterogeneous replication, clone-plan source resolution, stale sensor data after resets, Newton visualizer updates on PhysX simulations, and Newton camera/site frame poses.
- Adds initial experimental support for OvPhysX (kit-less version of PhysX).
Rendering, Cameras & PPISP
Rendering received broad updates across Isaac RTX, OVRTX, and Newton Warp:
- Adds
isaaclab_ppisp, a renderer-backend-agnostic physically plausible image signal processing pipeline for converting HDR scene-linear output to LDR camera images. - Adds HDR render outputs and internal PPISP composition to Isaac RTX, OVRTX, and Newton Warp renderers when
CameraCfg.isp_cfgis configured. - Moves the tiled-camera implementation into
Cameraand improves tiled-camera support in Kit and Newton visualizers. - Fixes OVRTX multi-GPU operation, cloned-environment camera output, temp-file handling, missing-runtime errors, and package resolution for optional PPISP installs.
- Adds rendering correctness, image comparison, visualizer integration, and performance tests.
Visualizers & Scene Data
The visualizer system now has stronger backend-agnostic scene-data support:
- Adds a scene-data backend hook for active
InteractiveSceneaccess. - Improves scene-data providers for PhysX, Newton, and OVPhysX so visualizers can discover transforms, contacts, and sensors consistently.
- Adds tiled camera views to Kit and Newton visualizers.
- Fixes visualizer startup ordering, Kit visualizer crashes, Newton visualizer updates on PhysX scenes, and camera/video recording behavior when multiple visualizers are active.
Teleoperation, Mimic & Policy Deployment
Teleoperation and imitation-learning workflows were updated for the 3.0 stack:
- Adds Isaac Teleop MCAP record/replay support and a non-interactive
teleop_replay_agent.pyfor CI replay. - Defers optional
isaacteleopimports so task configs can be parsed without the Isaac Teleop runtime installed. - Improves CloudXR defaults, XR performance guidance, native keyboard/gamepad/SpaceMouse mappings, and RMPFlow teleoperation behavior.
- Updates Mimic installation to include
isaaclab_teleopand removes the obsoletenvidia-srl-usd-to-urdfdependency. - Adds LEAPP policy export documentation and fixes RSL-RL recurrent policy export, projected-gravity export, checkpoint selection, and policy-deployment guides.
Installation, Docker & CI
This release simplifies setup while adding significant infrastructure hardening:
- Adds experimental root-level
uv run trainanduv run playworkflows so training and playback can be launched from a fresh checkout without manually creating or activating an environment. - Simplifies install extras to
isaacsimandall, replacing older per-submodule extras such astasks,rl, andassets. - Pins the released Isaac Sim Docker image to 6.0.0 and keeps Python pinned to 3.12.
- Updates PyTorch to
2.10.0with CUDA 12.8 wheels on x86_64/Windows and CUDA 13.0 wheels for aarch64. - Adds install CI, wheel build automation, package-scoped test runners, Docker volume and non-root-user fixes, and published image tags.
- Improves aarch64, DGX Spark, ARM Docker, Windows, uv, and pip installation documentation.
- Pins third-party GitHub Actions to commit SHAs and improves CI cleanup, cancellation, sharding, diagnostics, and docs-only behavior.
🔆 New & Expanded Capabilities
Core
- Adds ProxyArray and asset/sensor-level property caching for faster repeated data access.
- Adds scene-data provider APIs and docs for backend-neutral transform access.
- Adds schema-configuration documentation and backend-neutral deformable APIs.
- Adds GPU transform reads, performance optimizations for asset writes, and startup-time profiling tools.
Physics & Rendering Backends
- Adds OVPhysX articulation, rigid object collection, contact sensor, frame view, scene-data backend, and runtime install diagnostics.
- Adds HDR camera output and PPISP integration, deformable API migration, ray-caster fixes, and multi-GPU Fabric frame-view support.
- Adds Newton deformable support, rigid-deformable coupling, ray-caster support, solver configuration exports, contact accessors, and updated Newton package pins.
Learning & Environments
- Adds unified
trainandplayconsole entry points that dispatch by--rl_libraryacrossrsl_rl,rl_games,skrl,sb3, andrlinf. - Refactors per-library train/play scripts under
scripts/reinforcement_learning/around a shared dispatch helper, reducing duplicated launcher and parser logic. - Adds typed preset selectors such as
physics=physx,physics=newton_mjwarp, andrenderer=...to unified training and play scripts. For example:train --rl_library rl_games --task=Isaac-Cartpole-RGB-Camera-Direct-v0 physics=newton_mjwarp renderer=newton_renderer presets=rgb. - Adds validation for unsupported backend/renderer/visualizer combinations with clearer errors.
- Adds public helpers for enumerating task presets.
- Expands Newton presets for locomotion, manipulation, navigation, and Warp-first experimental environments.
- Adds success-rate metric logging across RL tasks.
Documentation
- Reworks installation, quickstart, ecosystem, Docker, CloudXR, Teleop, visualizer, renderer, physical-backend, migration, and environment documentation.
- Adds policy-deployment guides for reach policies and LEAPP exports.
- Adds profiling, proxy-array, camera-output, video-recording, tiled-camera, schema-cfg, and physical-backend documentation.
- Removes remaining
--headlessreferences in favor of--viz/--visualizer.
💔 Breaking Changes
Preset CLI
isaaclab_tasks.utils.fold_preset_tokens has been removed. setup_preset_cli() now returns physics=, renderer=, and presets= tokens verbatim, and register_task() parses them directly. Scripts should assign the returned remainder to sys.argv unchanged.
Teleoperation Replay
The transitional isaaclab_teleop.automation package, including XcrReplayConfig and start_xcr_replay, has been removed. Replay workflows now use Isaac Teleop MCAP replay through scripts/environments/teleoperation/teleop_replay_agent.py.
The legacy lazy teleop_devices accessor on GR1T2 pick-place environment configs has also been removed. Use env_cfg.isaac_teleop or construct legacy OpenXR devices explicitly.
Deformable APIs
Generic deformable object and material APIs have moved from isaaclab_physx into backend-neutral isaaclab.assets and isaaclab.sim imports. The old generic PhysX deformable aliases are deprecated in favor of PhysX-specific names.
OVRTX Renderer Configuration
OVRTXRendererCfg.use_cloning has been renamed to use_ovrtx_cloning, and temp_usd_suffix has been removed. Temporary USD output now uses a fixed filename under temp_usd_dir when enabled.
Camera Aliases
TiledCamera has been folded into Camera. Existing tiled-camera aliases remain as compatibility surface where available, but new code should use Camera and CameraCfg.
🐛 Notable Fixes
Core Runtime
- Fixes SimulationContext reset ordering so initial visualizers are created before timeline event pumping can invalidate new PhysX tensor views.
- Guards environment, asset, sensor, and callback destructors during Python shutdown.
- Fixes memory leaks when closing manager-based, direct RL, and direct MARL environments.
- Fixes safe callable resolution for lambda strings by validating expressions and evaluating them without Python builtins.
- Fixes local and remote asset dependency retrieval for MDL materials and textures.
Backends & Sensors
- Fixes stale sensor data after environment resets for PhysX and Newton contact, IMU, PVA, and joint-wrench sensors.
- Fixes PhysX scene-data rigid-body discovery when joint prims share names or carry rigid-body API metadata.
- Fixes Newton and OVRTX heterogeneous replication, clone-plan path resolution, and camera transform handling.
- Fixes OVPhysX optional runtime pins and missing-runtime install errors.
- Fixes OVRTX package resolution so PPISP is only required when camera ISP is configured.
Training & Deployment
- Fixes
rl_gamesand SB3 checkpoint fallback when best/final checkpoints are not yet written. - Fixes skrl JAX multihost imports, RSL-RL recurrent LEAPP export, and LEAPP projected-gravity export.
- Fixes AutoMate PhysX sizing, assembly ID validation, Numba dependency removal, and downstream argument forwarding.
- Fixes RLinf optional dependencies for DGX Spark and aarch64.
- Fixes native teleoperation mappings for Franka reach tasks and RMPFlow quaternion handling.
🔧 Updated Dependencies
- Isaac Sim 6.0.0 Docker image.
- Python
>=3.12,<3.13. - PyTorch
2.10.0, TorchAudio2.10.0, TorchVision0.25.0. - CUDA 12.8 PyTorch wheels for Linux x86_64, Windows, and AMD64 markers; CUDA 13.0 wheels for Linux aarch64/arm64 markers.
- Newton package pins updated along the 1.2.1 line.
- OVPhysX optional runtime pinned to
ovphysx==0.4.13. - OVRTX optional runtime updated along the 0.3.x line.
pyglet>=2.1.6,<3added for Newton GL video recording.isaaclab_ppispadded as the shared camera ISP extension, loaded by renderers only when camera ISP is configured.
⚠️ Known Limitations
- This remains a beta release; the release branch may still receive breaking changes before the final Isaac Lab 3.0 release. We anticipate the branch will stabilize towards a final Isaac Lab 3.0 release in the coming 1-2 months.
- Newton remains under active development. Some features, task presets, and surface gripper workflows remain backend-specific or unsupported.
- OVRTX and OVPhysX require their optional runtime wheels. Isaac Lab now reports clearer install guidance when those wheels are missing, but those backends are still optional installs.
📖 Migration Notes
- Replace
--headlessusage with--viz/--visualizeror omit visualizers for fully headless runs. - Replace
presets=...only where broad preset broadcast is intended; prefer typed selectors such asphysics=...andrenderer=...when selecting backend-specific behavior. - Remove
fold_preset_tokens(...)wrappers from custom scripts that integrate with the preset CLI. - Move deformable imports to backend-neutral
isaaclab.assetsandisaaclab.simAPIs where possible. - Migrate tiled-camera code toward
Camera/CameraCfg. - Use
ProxyArray.torchorProxyArray.warpexplicitly when crossing between Torch and Warp code. - Use Isaac Teleop MCAP replay and
teleop_replay_agent.pyfor replay automation instead of the removed XCR automation helpers.