Hello, I am at my wits end trying to figure out how to configure my project for OpenXR. Specifically which plugins to enable and which to disable. I released a VR game in early access last month and since then I’ve been stuck in an endless quagmire of trying to fix problems that people are having just running the game.
As I understand it, I’m meant to disable all the UE4 (4.27) VR plugins except OpenXR and the Morden VRE expansion plugins? Correct?
The problem with doing this is that in the shipping build, launching from the Steam Library the VR never kicks in. It just stays stuck with a static camera. SteamVR is set as default OpenXR runtime. The only way I can get it to work is if I enable the SteamVR plugin in Unreal. But then that causes problems for Oculus users where SteamVR insists on booting itself up and putting players up in the air due to the tracking origin difference even when Oculus is running and set as the Default OpenXR Runtime. The only way around that seems to be renaming the SteamVR folder - which of course isn’t ideal and not something I should be need to be advising players to have to do in order to play the game.
Any help would be hugely appreciated because this is really holding up the entire game development and becoming a huge source of stress.
If everything works otherwise, then yes. In my experience all plugins have major issues in 4.27 though.
The Steam Library issue sounds like it would be some kind of issue with the app configuration in Steam, rather than an issue with SteamVR or Unreal. It might be worth asking on the Steamworks forum how to configure OpenXR applications.
If nothing else works, there are two ways of setting which plugin is used. The first one is adding custom HMDPluginPriority settings to DefaultEngine.ini
These are the defaults from BaseEngine.ini, which give priority to the proprietary plugins over OpenXR.
[HMDPluginPriority]
; Since SteamVR also works with the Oculus Rift, give priority to the native Oculus plugin before trying SteamVR.
; OpenXR is production ready and, if enabled, should be the priority plugin. For 4.27, we still need to prioritize
; the native plugins due to runtime features that are not yet supported in OpenXR.
OculusHMD=40
SteamVR=30
OpenXRHMD=20
WindowsMixedRealityHMD=10