isaaclab-3-migration
Installation
SKILL.md
Isaac Lab 3.x Migration
Isaac Lab 3.0 introduces a multi-backend architecture (PhysX + Newton) that separates backend-specific code from the core isaaclab API. This skill encodes every breaking change and deprecation needed to migrate Isaac Lab 2.x code to 3.0, or to write correct 3.0 code from scratch.
The Three Highest-Impact Changes (check these first)
1. Quaternion format changed from WXYZ to XYZW ⚠️
This silently breaks rotations — code runs but robots are oriented wrong.
| Old (2.x, WXYZ) | New (3.0, XYZW) | |
|---|---|---|
| Order | (w, x, y, z) |
(x, y, z, w) |
| Identity | (1.0, 0.0, 0.0, 0.0) |
(0.0, 0.0, 0.0, 1.0) |
Update ALL hard-coded quaternions: rot= in asset configs, goal poses, initial states, controller targets, docs/comments. All isaaclab.utils.math quaternion functions (quat_mul, quat_apply, quat_from_euler_xyz, quat_from_matrix, etc.) now expect and return XYZW. convert_quat() has been removed — delete calls to it; no conversion is needed anymore.