vrp_vh Posted January 18 Share Posted January 18 Issue: Applications sometimes crash during openxr initialization/startup when XR_APILAYER_VIVE_facial_tracking (ViveOpenXRFacialTracking.dll) is loaded. versions: VBS - 1.10.4 ViveOpenXRFacialTracking.dll - 0.1.6.0 Unity - 2021.3 OpenXR plugin - 1.6.0 Repro: Cannot be reproduced consistently. Happens mostly when VBS is running without steamvr and openxr is initialized manually inside unity script. Sample app: Unity application with unity OpenXR plugin v1.6.0 https://docs.unity3d.com/Packages/com.unity.xr.openxr@1.6/manual/index.html One of the OpenXR plugin samples (InterceptFeature) can be used. + simple script (attatched in files) that would start and stop openxr loader on key press. To achieve said crash: 1/ start VBS (without steamvr) 2/ start unity app 3/ press M (StartXR) 4/ if application did not crash kill vrserver.exe and goto step 3 Workaround A: Disable facial tracking layer in system registry. HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenXR\1\ApiLayers\Implicit - set facial tracking dword to something != 0 Workaround B: Disable facial tracking layer using DISABLE_XR_APILAYER_VIVE_FACIAL_TRACKING_1 environment variable XRSwitch.cs Editor.log htc_openxr_facial_tracking_20230118.txt crash.dmp htc_facial_tracking_crash.evtx Link to comment Share on other sites More sharing options...
KyleC Posted March 10 Share Posted March 10 Hi @vrp_vh, After reading your reproduce steps, there is one thing I cannot figure out - how do you mean VBS running without SteamVR? Since VBS is not a OpenXR runtime, if you would like to run a OpenXR App, you must need SteamVR as a OpenXR runtime to get it work. But from your reproduce step 4, you mentioned about vrserver which is one component of SteamVR and that means SteamVR is running at that time, amm I right? Just want to confirm that SteamVR is running or not when you play the Unity OpenXR App and whether SteamVR is set to be OpenXR active runtime? Link to comment Share on other sites More sharing options...
vrp_vh Posted May 23 Author Share Posted May 23 Hi, sorry for the delay, I did not get any notification about your reply. When you start VBS it's in "Stand by" mode and SteamVR is not running until you connect the headset. The unity application can start in "desktop view/desktop mode" and then request "VR/OpenXR" startup on-demand. (see the attached script) Most of the time it's going to start SteamVR just fine. Then you can connect the headset and everything's fine. Sometimes crash happens. Funny thing... I have just noticed while testing this again that similar crash happens with "ViveOpenXRHandtracking.dll" crash.dmp Editor.log Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now