Integration between IsaacSim and Create XR

I have a USD scene in IsaacSim and I am controlling it using the Python API. Furthermore, I tested the same scene on Create XR using the VR Headset. I was wondering if it is possible to run an IsaacSim simulation using the Python API and see what is going on in the scene using the VR headset, as in Create XR. In other words, IsaacSim supports VR headsets? is there a way to integrate both environments (IsaacSim and Create XR)?

Best regards,

Juan

Isaac sim should contain all of the VR extensions that Create XR provides, they are disabled by default however.
If you are on windows you should be able to search for the relevant xr extensions under Window->Extension manager, enable them, set them to autoload and restart isaac sim.

The XR extensions need to be started when isaac sim/ omniverse first loads, enabling, setting to autoload and restarting isaac sim should enable them properly.

Note that the XR extensions are currently only supported on windows.

1 Like

Hi @juanjqo

For Linux you can try the recently updated external user extension semu.xr.openxr (formerly omni.add_on.openxr)

For the topic, visit:

1 Like

Thank your for your reply. I’m going to test it!

Thank you for your comments. It is good to know. Currently, I’m using IsaacSim on Windows.

Hello,
I have the same configuration as Juanjqo with python extensions on Isaac Sim to simulate robots and visualize/manipulate them in VR
On isaac Sim I followed the instructions and activated the xr extensions + autolaod properties, this gives me good access to the VR menus directly in Isaac Sim
But despite these points, I don’t have the same behaviors in Isaac Sim VR as on CreateXR :

  • I can’t initialize my position on the active camera location
  • I can’t move in the scene either by teleportation or by the classic moves (forward / backward / right / left)
  • the visual quality is very degraded (the image jumps, the graphic quality is degraded)

I grab these warning messages in console :
[omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: BUILDING AVATAR (FROM EVENT)
2023-04-03 10:45:55 [244,061ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: BUILD AVATAR: basic_avatar
2023-04-03 10:45:55 [244,062ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,062ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: CREATE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,072ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: SELECTED DEVICE MODEL LEFT: meta quest pro (left controller),oculus_touch,left,steamvr
2023-04-03 10:45:55 [244,073ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: SELECTED DEVICE MODEL RIGHT: meta quest pro (right controller),oculus_touch,right,steamvr
2023-04-03 10:45:55 [244,073ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: LEFT MODEL: XRControllerModelResult(score=2, package=‘common’, asset=‘/controllers/oculus_quest2_controller_left/model.usd’)
2023-04-03 10:45:55 [244,073ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: RIGHT MODEL: XRControllerModelResult(score=2, package=‘common’, asset=‘/controllers/oculus_quest2_controller_right/model.usd’)
2023-04-03 10:45:55 [244,115ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: REBUILD TOOLS: everyting
2023-04-03 10:45:55 [244,115ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: REBUILD TOOL: settings_menu
2023-04-03 10:45:55 [244,115ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,124ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: REBUILD TOOL: grab_tool
2023-04-03 10:45:55 [244,125ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,125ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: REBUILD TOOL: selection_tool
2023-04-03 10:45:55 [244,125ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,134ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: REBUILD TOOL: navigation_tool
2023-04-03 10:45:55 [244,134ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,143ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: REBUILD TOOL: move_tool
2023-04-03 10:45:55 [244,143ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui
2023-04-03 10:45:55 [244,144ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ACTIVATE TOOL LAYER: everyting
2023-04-03 10:45:55 [244,144ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: SELECTED GESTURE RECOGNIZER: oculus_controller_recognizer
2023-04-03 10:45:55 [244,144ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ACTIVATE TOOL: settings_menu
2023-04-03 10:45:55 [244,153ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ACTIVATE TOOL: grab_tool
2023-04-03 10:45:55 [244,154ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ACTIVATE TOOL: selection_tool
2023-04-03 10:45:55 [244,177ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ACTIVATE TOOL: navigation_tool
2023-04-03 10:45:55 [244,310ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ACTIVATE TOOL: move_tool
2023-04-03 10:45:55 [244,310ms] [Warning] [omni.kit.xr.core.scripts.xr_class_extensions.xrcore_class_extensions] XR Diagnostic: ENSURE XR USD LAYER: xr_gui

Best regards,
David

Hi @david.maurange - Can you please share more information about Isaac Sim version, OS version?

I am building a VR app that will work with Isaac sim and oculus quest 2. Reach out to me if you want more info.

@rthaker I have successfully connected my VR headset to the Isaac Sim through the SteamVR extension in windows. Now I need to launch the application directly in python (standalone workflow) and also access the controller and VR poses and button states in python. I have extensively searched for documentations and examples but could not find any. Can you please provide an example of doing this? Unfortunately I can not switch to Linux at this phase of the project.

1 Like