This guide is intended to assist making games supported by Sim Racing Studio work with OpenXR in order to utilize the Sim Racing Studio OpenXR Motion Compensation.


Note: Sim Racing Studio does not support troubleshooting of OpenXR. Please contact the developer of the game or online resources to troubleshoot any issues. 


The bulk of the content below was provided by mbucchia (developer of OpenXR) via the OpenXR Toolkit website. For the latest in OpenXR developments and supported headsets/games, please visit OpenXR Toolkit


This guide covers the following topics: 

  • Verifying VR Headset has Native Support for OpenXR
  • If you want to USE SteamVR with OpenXR
  • If you wish to revert to using OpenVR instead of OpenXR
  • If you want to NOT USE SteamVR  at all
  • Setting the HMD to use OpenXR
  • Verifying OpenXR Installed Correctly
  • OpenXR Game Compatibility
  • OpenComposite Setup
  • Game Setup for OpenXR:
    • DCS
    • iRacing
    • Microsoft Flight Simulator (2020)
  • Limitations
  • Known Issues
  • Videos



Verifying VR Headset has Native Support for OpenXR

With OpenXR, you may have the opportunity to either USE or NOT USE SteamVR.


See the table below for headsets that require OpenXR via SteamVR:

Headset brandSupports OpenXRRequires OpenXR via SteamVR
Windows Mixed Reality (HP Reverb, Samsung Odyssey…)YesNo
Oculus (Rift, Quest, Quest 2, Quest Pro…)YesNo
Oculus (via Virtual Desktop)YesYes [1]
Varjo (Aero, VR-3…)YesNo
Pimax (5K, 8K…)YesNo [2]
HTC Tier 1 (Vive original, Vive Pro)YesYes
HTC Tier 2 (Vive Cosmos, Vive Focus)YesNo
Valve IndexYesYes
Pico (Neo 3, Neo 4)Yes
Yes [1]

[1] Using Oculus via Virtual Desktop or Pico via Virtual Desktop or Streaming Assistant requires to use OpenXR via SteamVR.

[2] Pimax officially only supports OpenXR via SteamVR, however you may consider using PimaxXR to remove the use of SteamVR.


NOTE: Headsets in the list above that Require OpenXR via SteamVR can be setup in SteamVR via the 'SET STEAMVR AS OPENXR RUNTIME' button as seen below:



If you want to USE SteamVR with OpenXR


Why/when to use SteamVR OpenXR?


- I have a headset that does not support OpenXR natively (eg: Valve Index).
- I rely on SteamVR features (like overlays or controller button bindings).
- I rely on SteamVR 3rd party apps (like fpsVR or OVRMC).



If you wish to revert to using OpenVR instead of OpenXR

Why/when to use OpenVR?

- I rely on OpenVR 3rd party injections (mods) like ReShade or vrperfkit
- I could not get OpenXR to work



If you want to NOT USE SteamVR at all


Why/when to use OpenXR without SteamVR?


- I have a headset that supports OpenXR natively (eg: HP Reverb).
- I want to remove the overhead of SteamVR (lower memory usage and possibly higher image clarity).



Setting the HMD to use OpenXR

Below are the steps to utilize OpenXR with the following HMDs: 

  • Windows Mixed Reality
  • Oculus (Link cable or Air Link only)
  • Varjo
  • Pimax
  • HTC (Vive Cosmos and Focus only)


Windows Mixed Reality (use EITHER method)

From Mixed Reality Portal:

Toggle OpenXR runtime

 
From OpenXR Tools for Windows Mixed Reality:   Toggle OpenXR runtime



Oculus (Link cable or Air Link only)

From the Oculus app:   Toggle OpenXR runtime

   Toggle OpenXR runtime

 

Varjo

From Varjo Base:

   Toggle OpenXR runtime


Pimax

You must download unofficial Pimax OpenXR support: Home · mbucchia/Pimax-OpenXR Wiki · GitHub

Then from PimaxXR Control Center:

   Toggle OpenXR runtime

 
HTC (Vive Cosmos and Focus only)

You must install the HTC Vive Console For SteamVR. Once opened:

Toggle OpenXR runtime

   Toggle OpenXR runtime 



Verifying OpenXR Installed Correctly

To inspect the current configuration on your system (and make sure OpenXR is properly installed and configured), you can use OpenXR Explorer.

It will show you the currently active OpenXR runtime (which should match your device if you want things to work!):

   image.png 




OpenXR Game Compatibility

Check https://mbucchia.github.io/OpenXR-Toolkit/opencomposite#game-compatibility for updates on OpenXR game compatibility. 


Both OpenComposite and OpenXR Tookit are limited in the applications that they support. Sometimes, combinations of OpenComposite plus OpenXR Toolkit are also not working. The table below tracks known games to work with OpenComposite and whether they also work with OpenXR Toolkit.


Do not use any version of OpenXR Toolkit older than 1.1.4 with OpenComposite. Older versions are not compatible.


There is an official compatibility for OpenComposite, and you can also refer to the table below for compatibility with OpenXR Toolkit.

GameOpenCompositeOpenXR Toolkit
American Truck Simulator 2YesYes
Assetto CorsaYesYes [6]
Assetto Corsa CompetizioneYesYes [1]
Automobilista 2Yes [8]Yes [8]
Dirt Rally 2Yes [2]Yes [2]
Elite DangerousYesYes
Euro Truck Simulator 2YesYes
IL-2 SturmovikYesYes [3]
iRacingYesNo [4]
F1 2022YesYes
Pavlov VRYesYes
Project Cars 2YesYes
Project Cars 3YesYes
rFactor 2YesYes [7]
SubnauticaYesYes
X-Plane 11Yes [5]No
X-Plane 12Yes [5]No


[1] Supports Eye-tracked Foveated Rendering.

[2] Dirt Rally 2 with the eye accomodation fix requires dr2vrfix-openxr.

[3] Does not support Fixed Foveated Rendering.

[4] iRacing now has official support for OpenXR, and OpenXR Toolkit is only compatible in that mode, and not with OpenComposite.

[5] On Windows Mixed Reality, X-Plane requires the use of OpenXR-Vk-D3D12.

[6] Assetto Corsa with Fixed Foveated Rendering requires to lower the “Glare” setting under “Video settings” to Medium or lower.

[7] rFactor 2 with Fixed Foveated Rendering requires to lower the “Post Effects” setting under “Video setup” to Medium or lower.

[8] Automobilista 2 forces usage of Oculus mode when an Oculus device is detected, and will not allow use of OpenComposite/OpenXR Toolkit.

If there is a game working, but is not on the list above, please file an Issue to let the OpenXR developers know.



OpenComposite Setup

Please visit the link below on detailed instruction on setting up OpenComposite if needd:

https://mbucchia.github.io/OpenXR-Toolkit/opencomposite#step-by-step



Game Setup for OpenXR

Additional games will be added as information on how they utilize/launch OpenXR is obtained. 


DCS World

Depending on which headset you have, select the OpenXR runtime and DCS will work without any third party apps.

  • If you need to force OpenXR in DCS, the command parameter is:  --force_enable_VR --force_OpenXR

Please ensure you are doing the command parameter on the DCS.exe or a shortcut from the DCS.exe (NOT the DCS_updater.exe). For multithreading it is the same process, but use the bin-mt DCS.exe.


   Screenshot 2023-01-27 223137.png



iRacing

Launch the iRacing UI and in the upper right, select the Display Mode button. Then select OpenXR so there is a checkmark next to it.



Microsoft Flight Simulator (2020)



Limitations 

Check https://mbucchia.github.io/OpenXR-Toolkit/ for updates on any limitations below:

  • OpenXR Toolkit is not compatible with ReShade and many other injectors or 3rd party mods.


Known Issues

Check https://mbucchia.github.io/OpenXR-Toolkit/ for updates on any known issues below:

  • Fixed and Eye-tracked Foveated Rendering in Microsoft Flight Simulator is incorrectly applied in the main menu, resulting in blurry menu windows.
  • Fixed Foveated Rendering is not supported in IL-2 Sturmovik.
  • Fixed Foveated Rendering in Assetto Corsa requires to lower the “Glare” setting under “Video settings” to Medium or lower.
  • Fixed Foveated Rendering in rFactor 2 requires to lower the “Post Effects” setting under “Video setup” to Medium or lower.
  • OpenXR Toolkit is not compatible with War Thunder on Varjo headsets.
  • OpenXR Toolkit is only compatible with iRacing when using OpenXR. Compatibility going through OpenComposite has not been tested, and will not be officially supported.



Videos