VR development with UE5 impossible due to fatal flaw

It seems to be impossible to develop anything for VR in Unreal Enigne 5 (any version) in combination with OS Windows 11 and OpenXR.

There is fatal issue since first UE5 version:

  • Combination of Win 11 + VR + dx12 + UE5 + OpenXR
  • Always, 100% crash when VRAM is filled, which is basically always.

I cannot immagine VR development without OpenXR, with widely spread Win 11. A lot of people is having this issue and it is not adressed since 5.0. It makes totally no sense to do VR developmen in UE5 at all (for runtime app development).

Does anyone have the same problem?

I have the same issue.

VR app developed in UE 5.2 working great on Win10 + OpenXR + WMR.

Tried on a client’s Win11 workstation. The VR app crashes on startup: opens to blackscreen and quits imeditately.

Did you find a solution or any clues why the problem occurs?

Unfortunately, not yet. Developers for our VR app will check again soon, but it seems that Epic just doesn’t care about VR development, as we found out about 4 months ago and the developers have found that many other people are having problems with this issue.

It’s even on the Epic buglist, but no one has taken any steps to open it up yet.

Hopefully in the new version 5.3, because Twinmotion switched to UE5 a while ago, but it’s a bit of a different situation for them now that Epic is behind them. (Twinmotion is an archviz sw that also has some basic VR)

1 Like

I also have the crashing on start up issue with the VIVE focus 3. Have just done a post myself about it.

I’m so frustrated with this. the only way to visualize something in VR today in Unreal for me is by using the depricated SteamVR plugin (only) in 5.2 or earlier. 5.3 that only counts with OpenXR never works. The VR preview was never not gray when using OpenXR.

The most frustrating part is that my projects don’t even open if I have OpenXR installed. I have to set a -no hmd flag to be able to open the project.

I tried all the fixes, runtimes, installs, uninstalls, different headsets, DirectX versions…

This is quite disrespectful to be honest.

Could any one please share a crash log when this issue occurs, preferably from the latest 5.3 UE version. Or link to the mentioned bug report?

After 4 days I finally found the issue on my side!
This was a freaking battle.

Thanks to many hours of ChatGPT I found that my Environment Variables were over ruling runtimes everywhere else. In OpenXR Explorer and both in Steam and Oculus I would see that runtimes were pointing in the right direction, but was only when I looked at the value in the Environment Variable that I saw that Lenovo was over writing it all.

Steb by step:

  1. Access Environment Variables:
  • Right-click on the Start button and select ‘System’.
  • Click on ‘About’, then on ‘Advanced system settings’.
  • In the System Properties window, click on ‘Environment Variables…’.
  1. Identify OpenXR Variable:
  • Look for a variable named XR_RUNTIME_JSON in the ‘User variables’ or ‘System variables’ section. This variable should point to the JSON configuration file of your active OpenXR runtime.
  1. Edit the OpenXR Runtime Path:
  • Select the XR_RUNTIME_JSON variable and click ‘Edit…’.
  • Change the ‘Variable value’ to the path of the correct OpenXR runtime JSON file (e.g., for SteamVR, it might be something like C:\Program Files (x86)\Steam\steamapps\common\SteamVR\steamxr_win64.json).
  1. Remove the Variable (Optional):
  • If you’d rather have the system automatically detect the OpenXR runtime, you can select the XR_RUNTIME_JSON variable and click ‘Delete’.
  • This action will remove the override, and the system will use the runtime specified in the registry.
  1. Apply and Restart:
  • Click ‘OK’ to save your changes and close all open dialog boxes.
  • Restart your computer to apply the changes.