Skip to content

Commit 6381e9d

Browse files
authored
Merge pull request #7 from NVlabs/mgussert/isaacsim_module_name_update
isaacsim 4.5 update
2 parents 49413c9 + 496e55e commit 6381e9d

File tree

9 files changed

+57
-38
lines changed

9 files changed

+57
-38
lines changed

Diff for: CHANGELOG.md

+9
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@
22

33
# main
44

5+
# ref-4.5
6+
7+
Release targeting Isaac Sim 4.5
8+
9+
- Updated to use isaacsim.* rather than omni.* import calls
10+
- Added minor fixes to API discrepancies
11+
- Added required extension loading for replay rendering
12+
- Updated README to include setup instructions for Isaac Sim 4.5
13+
514
# ref-4.2
615

716
Release targeting Isaac Sim 4.2

Diff for: README.md

+15-6
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ To get started with MobilityGen follow the setup and usage instructions below!
5656
- [How to implement a custom scenario](#how-to-custom-scenario)
5757
- [📝 Data Format](#-data-format)
5858
- [👏 Contributing](#-contributing)
59+
-
5960

6061
<a id="setup"></a>
6162
## 🛠️ Setup
@@ -64,7 +65,9 @@ Follow these steps to set up MobilityGen
6465

6566
### Step 1 - Install Isaac Sim
6667

67-
1. Using the ``Omniverse Launcher`` install ``Isaac Sim 4.2.0``
68+
1. Download [Isaac Sim 4.5.0](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/download.html)
69+
70+
> We'll assume you use the zip file and extract it to ``~/isaacsim``.
6871
6972
### Step 2 - Clone this repository
7073

@@ -86,25 +89,31 @@ Next, we'll call ``link_app.sh`` to link the Isaac Sim installation directory to
8689
cd MobilityGen
8790
```
8891
89-
2. Run the following to link the ``app`` folder
92+
2. Run the following to link the ``app`` folder and pass it the path to where you installed Isaac Sim
9093
9194
```bash
92-
./link_app.sh
95+
./link_app.sh --path ~/isaacsim
9396
```
9497
9598
<details>
9699
> This step is helpful as it (1) Enables us to use VS code autocompletion (2) Allows us to call ./app/python.sh to launch Isaac Sim Python scripts (3) Allows us to call ./app/isaac-sim.sh to launch Isaac Sim.
97100
</details>
98101
99-
### Step 4 - Install the C++ path planner (for procedural generation)
102+
### Step 4 - Install other python dependencies (including C++ path planner) (for procedural generation)
103+
104+
1. Install miscellaneous python dependencies
105+
106+
```bash
107+
./app/python.sh -m pip install tqdm
108+
```
100109
101-
1. Navigate to the path planner directory
110+
2. Navigate to the path planner directory
102111
103112
```bash
104113
cd MobilityGen/path_planner
105114
```
106115
107-
2. Install with pip using the Isaac Sim python interpreter
116+
3. Install with pip using the Isaac Sim python interpreter
108117
109118
```bash
110119
../app/python.sh -m pip install -e .

Diff for: exts/omni.ext.mobility_gen/omni/ext/mobility_gen/build.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515

1616
import os
1717

18-
import omni.isaac.core.utils.prims as prim_utils
19-
from omni.isaac.core.utils.stage import open_stage
20-
import omni.isaac.core.objects as objects
21-
from omni.isaac.core.utils.stage import add_reference_to_stage
18+
import isaacsim.core.utils.prims as prim_utils
19+
from isaacsim.core.utils.stage import open_stage
20+
import isaacsim.core.api.objects as objects
21+
from isaacsim.core.utils.stage import add_reference_to_stage
2222

2323

2424
from omni.ext.mobility_gen.occupancy_map import OccupancyMap

Diff for: exts/omni.ext.mobility_gen/omni/ext/mobility_gen/robots.py

+10-9
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,14 @@
2121
from typing import List, Type, Tuple, Union
2222

2323
# Isaac Sim Imports
24-
from omni.isaac.core.prims.xform_prim import XFormPrim
25-
from omni.isaac.core.robots.robot import Robot as _Robot
26-
from omni.isaac.core.articulations import ArticulationView as _ArticulationView
27-
from omni.isaac.wheeled_robots.robots import WheeledRobot as _WheeledRobot
28-
from omni.isaac.wheeled_robots.controllers.differential_controller import DifferentialController
29-
from omni.isaac.examples.humanoid.h1 import H1FlatTerrainPolicy
30-
from omni.isaac.examples.quadruped.quadruped_example import SpotFlatTerrainPolicy
31-
import omni.isaac.core.utils.numpy.rotations as rot_utils
24+
from isaacsim.core.prims import SingleXFormPrim as XFormPrim
25+
from isaacsim.core.api.robots.robot import Robot as _Robot
26+
from isaacsim.core.prims import Articulation as _ArticulationView
27+
from isaacsim.robot.wheeled_robots.robots import WheeledRobot as _WheeledRobot
28+
from isaacsim.robot.wheeled_robots.controllers.differential_controller import DifferentialController
29+
from isaacsim.robot.policy.examples.robots.h1 import H1FlatTerrainPolicy
30+
from isaacsim.robot.policy.examples.robots import SpotFlatTerrainPolicy
31+
import isaacsim.core.utils.numpy.rotations as rot_utils
3232

3333
# Extension imports
3434
from omni.ext.mobility_gen.common import Buffer, Module
@@ -147,6 +147,7 @@ def build_front_camera(cls, prim_path):
147147
# Add camera
148148
camera_path = os.path.join(prim_path, cls.front_camera_base_path)
149149
front_camera_xform = XFormPrim(camera_path)
150+
150151
stage = get_stage()
151152
front_camera_prim = stage_get_prim(stage, camera_path)
152153
prim_rotate_x(front_camera_prim, cls.front_camera_rotation[0])
@@ -349,7 +350,7 @@ def build(cls, prim_path: str):
349350
def write_action(self, step_size):
350351
action = self.action.get_value()
351352
command = np.array([action[0], 0., action[1]])
352-
self.controller.advance(step_size, command)
353+
self.controller.forward(step_size, command)
353354

354355
def set_pose_2d(self, pose):
355356
super().set_pose_2d(pose)

Diff for: exts/omni.ext.mobility_gen/omni/ext/mobility_gen/scene_builders.py

+2-4
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,8 @@
2020
import numpy as np
2121
from typing import Tuple
2222

23-
24-
import omni.isaac.core.utils.numpy.rotations as rot_utils
25-
import omni.isaac.core.objects as objects
26-
23+
import isaacsim.core.utils.numpy.rotations as rot_utils
24+
import isaacsim.core.api.objects as objects
2725

2826
from omni.ext.mobility_gen.utils.global_utils import get_stage
2927
from omni.ext.mobility_gen.utils.stage_utils import stage_add_dome_light

Diff for: exts/omni.ext.mobility_gen/omni/ext/mobility_gen/utils/global_utils.py

+9-9
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515

1616

1717
import omni.kit
18-
import omni.isaac.core
18+
import isaacsim.core
1919
from pxr import Usd
2020

21-
from omni.isaac.core_nodes.bindings import _omni_isaac_core_nodes
21+
from isaacsim.core.nodes.bindings import _isaacsim_core_nodes
2222
from omni.kit.viewport.utility import get_active_viewport
2323
from .stage_utils import stage_get_prim
2424

@@ -38,20 +38,20 @@ def new_stage() -> Usd.Stage:
3838
return stage
3939

4040

41-
def new_world(physics_dt: float = 0.01, stage_units_in_meters: float = 1.0) -> omni.isaac.core.World:
41+
def new_world(physics_dt: float = 0.01, stage_units_in_meters: float = 1.0) -> isaacsim.core.api.World:
4242
world = get_world()
4343
if world is not None:
44-
omni.isaac.core.World.clear_instance()
45-
omni.isaac.core.World(physics_dt=physics_dt, stage_units_in_meters=stage_units_in_meters)
46-
return omni.isaac.core.World.instance()
44+
isaacsim.core.api.World.clear_instance()
45+
isaacsim.core.api.World(physics_dt=physics_dt, stage_units_in_meters=stage_units_in_meters)
46+
return isaacsim.core.api.World.instance()
4747

4848

49-
def get_world() -> omni.isaac.core.World:
50-
return omni.isaac.core.World.instance()
49+
def get_world() -> isaacsim.core.api.World:
50+
return isaacsim.core.api.World.instance()
5151

5252

5353
def get_timestamp():
54-
return _omni_isaac_core_nodes.acquire_interface().get_sim_time_monotonic()
54+
return _isaacsim_core_nodes.acquire_interface().get_sim_time_monotonic()
5555

5656

5757
def save_stage(path: str, default_prim: str | None = None):

Diff for: exts/omni.ext.mobility_gen/omni/ext/mobility_gen/utils/occupancy_map_utils.py

+5-4
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
import tempfile
2323
import omni.kit.usd
2424
import typing as tp
25-
from omni.isaac.occupancy_map.bindings import _occupancy_map
26-
from omni.isaac.occupancy_map.utils import compute_coordinates, update_location
25+
from isaacsim.asset.gen.omap.bindings import _omap as _occupancy_map
26+
from isaacsim.asset.gen.omap.utils import compute_coordinates, update_location
2727
from pxr import Sdf, UsdGeom, UsdPhysics, Usd, UsdShade, Kind
2828

2929
from ..types import Point2d
@@ -75,7 +75,8 @@ async def occupancy_map_generate_from_prim_async(
7575

7676
app = get_app()
7777

78-
om = _occupancy_map.acquire_occupancy_map_interface()
78+
om = _occupancy_map.acquire_omap_interface()
79+
7980
timeline = omni.timeline.get_timeline_interface()
8081

8182
await app.next_update_async()
@@ -183,7 +184,7 @@ async def occupancy_map_generate_from_prim_async(
183184
occupied_thresh=ROS_OCCUPIED_THRESH_DEFAULT
184185
)
185186

186-
_occupancy_map.release_occupancy_map_interface(om)
187+
_occupancy_map.release_omap_interface(om)
187188

188189
return occupancy_map
189190

Diff for: scripts/replay.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,9 @@
6363
"./app/python.sh",
6464
"scripts/replay_implementation.py",
6565
"--ext-folder", "exts",
66-
"--enable", "omni.isaac.mobility_gen",
66+
"--enable", "omni.ext.mobility_gen",
6767
"--enable", "omni.isaac.examples",
68+
"--enable", "isaacsim.asset.gen.omap",
6869
"--input_path", recording_path,
6970
"--output_path", output_path,
7071
"--render_interval", str(args.render_interval),

Diff for: scripts/replay_directory.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
"scripts/replay_implementation.py",
7373
"--ext-folder", "exts",
7474
"--enable", "omni.ext.mobility_gen",
75-
"--enable", "omni.isaac.examples",
75+
"--enable", "isaacsim.asset.gen.omap",
7676
"--input_path", recording_path,
7777
"--output_path", output_path,
7878
"--render_interval", str(args.render_interval),

0 commit comments

Comments
 (0)