The end user is not supposed changing the registry, it is much simpler than this
In order to configure which OpenXR driver you’re using for any OpenXR application:
WMR portal notifies you with a Fix It” button if it is not the current OXR driver.
SteamVR Settings > Developer > Set SteamVR as OpenXR Runtime button
displays if it is not the current OXR driver, otherwise it shows this:
- 2 Type in “regedit” (without quotations) and hit Enter. This will launch the Registry Editor.
- 3 Locate the following key: HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenXR\1
It seems only the Oculus implementation is forcing the user to edit the registry, however I’d suggest you review the official OpenXR SDK Loader documentation
In other words, OpenXR runtime supports an environment variable specifically designed for trying out different drivers. Here is:
5.1.4. Overriding the Default Runtime Usage
There may be times that a developer wishes to ignore the standard runtime discovery process and force the loader to use a specific runtime. This could be for many reasons including:
- Forcing on a Beta runtime
- Replacing a problematic runtime in favor of another
In order to support this, the loader can be forced to look at specific runtime with the
XR_RUNTIME_JSONenvironment variable. In order to use the setting, simply set it to the full global path location of the desired runtime manifest file.
If the “XR_RUNTIME_JSON” variable is defined, then the loader will not look in the standard location for the active runtime. Instead, the loader will only utilize the filename defined in the environment variable.
Example 9. Setting XR_RUNTIME_JSON Override
Last but not least, the example you’re giving might be wrong for SteamVR.
For example I’ve moved my SteamVR installation to the SteamLibrary which is not in C:. In my case it is:
XR_RUNTIME_JSON = D:\SteamLibrary\steamapps\common\SteamVR