Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Resolved Application doesn't start correctly with WMR and HP Reverb G2

Discussion in 'VR' started by LJ3N, Jun 17, 2021.

  1. LJ3N

    LJ3N

    Joined:
    May 8, 2020
    Posts:
    5
    Hi everyone,

    I've been trying to build and start my Unity VR application with WMR and OpenXR but it doesn't seem to start correctly. Under Unity playmode everything works fine and I can test my game but when I build the application for PC Standalone and try open it from my headset it starts as 2D flat screen and not as a VR app. I am using the default build settings and default openxr settings too.
    Am I missing something ?
     
  2. joejo

    joejo

    Unity Technologies

    Joined:
    May 26, 2016
    Posts:
    958
    The player log file has a diagnostic output that should give you some information as to what may have gone wrong. Might be other error output in there as well with information. That's where I would check first to see what might be up.
     
  3. LJ3N

    LJ3N

    Joined:
    May 8, 2020
    Posts:
    5
    @joejo Thank you for your answer. I was clueless trying to change buildsettings and didn't think about logs.
    Find below my player.log file and my project settings. I think the application has a problem loading the Mixed Reality Tool Kit OpenXr plugin (in addition to unity openxr plugin) that I imported in my projet. Because I used MRTK to import OpenXr and HP reverb G2 input action map. Any clue on how to fix this ?

    player.log
    ---------------------------------------------------------------
    Mono path[0] = 'C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Managed'

    Mono config path = 'C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/MonoBleedingEdge/etc'

    Initialize engine version: 2020.3.11f1 (99c7afb366b3)

    [Subsystems] Discovering subsystems at path C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/UnitySubsystems

    [Subsystems] No descriptors matched for examples in UnitySubsystems/MicrosoftOpenXRPlugin/UnitySubsystemsManifest.json.

    [Subsystems] 1 'inputs' descriptors matched in UnitySubsystems/MicrosoftOpenXRPlugin/UnitySubsystemsManifest.json

    [Subsystems] No descriptors matched for displays in UnitySubsystems/MicrosoftOpenXRPlugin/UnitySubsystemsManifest.json.

    [Subsystems] 1 'meshings' descriptors matched in UnitySubsystems/MicrosoftOpenXRPlugin/UnitySubsystemsManifest.json

    [Subsystems] No descriptors matched for examples in UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json.

    [Subsystems] 1 'inputs' descriptors matched in UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json

    [Subsystems] 1 'displays' descriptors matched in UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json

    [Subsystems] No descriptors matched for meshings in UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json.

    GfxDevice: creating device client; threaded=1

    [XR] [9212] [11:01:39.556][Info ] Available Layers: (0)

    Direct3D:

    Version: Direct3D 11.0 [level 11.1]

    Renderer: NVIDIA GeForce RTX 3070 (ID=0x2484)

    Vendor:

    VRAM: 8043 MB

    Driver: 27.21.14.5751

    Begin MonoManager ReloadAssembly

    - Completed reload, in 1.869 seconds

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin.dll

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin.dll

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin

    XRGeneral Settings awakening...



    D3D11 device created for Microsoft Media Foundation video decoding.

    [Subsystems] OpenXR XR Plugin successfully registered Provider for OpenXR Display

    [Subsystems] OpenXR XR Plugin successfully registered Provider for OpenXR Input

    [Subsystems] OpenXR XR Plugin successfully registered Provider for OpenXR Display

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin.dll

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin.dll

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin.dll

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/MicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin.dll

    Fallback handler could not load library C:/Users/Ludo/Desktop/STAGE OBS/OpenXRTemplate-standalone/OpenXRTemplate_Data/Mono/libMicrosoftOpenXRPlugin

    DllNotFoundException: MicrosoftOpenXRPlugin

    at (wrapper managed-to-native) Microsoft.MixedReality.OpenXR.NativeLib.HookGetInstanceProcAddr(Microsoft.MixedReality.OpenXR.NativeLibToken,intptr)

    at Microsoft.MixedReality.OpenXR.OpenXRFeaturePlugin`1[TPlugin].HookGetInstanceProcAddr (System.IntPtr func) [0x00000] in <4609dd620b4b4cc889ef0cf619c9b3f8>:0

    at UnityEngine.XR.OpenXR.Features.OpenXRFeature.HookGetInstanceProcAddr () [0x00045] in <b0943ce2665c4873a3ab87719b19706e>:0

    at UnityEngine.XR.OpenXR.OpenXRLoaderBase.InitializeInternal () [0x000b0] in <b0943ce2665c4873a3ab87719b19706e>:0

    at UnityEngine.XR.OpenXR.OpenXRLoaderBase.Initialize () [0x0003e] in <b0943ce2665c4873a3ab87719b19706e>:0

    UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)

    UnityEngine.DebugLogHandler:LogException(Exception, Object)

    UnityEngine.Logger:LogException(Exception, Object)

    UnityEngine.Debug:LogException(Exception)

    UnityEngine.XR.OpenXR.OpenXRLoaderBase:Initialize()

    UnityEngine.XR.Management.XRManagerSettings:InitializeLoaderSync()

    UnityEngine.XR.Management.XRGeneralSettings:InitXRSDK()

    UnityEngine.XR.Management.XRGeneralSettings:AttemptInitializeXRSDKOnLoad()



    [XR] [9212] [11:01:42.005][Info ]



    ==== Start Unity OpenXR Diagnostic Report ====





    [XR] [9212] [11:01:42.005][Info ] ==== Report Reason: System Shutdown ====





    [XR] [9212] [11:01:42.005][Info ] ==== OpenXR Support Details ====

    [XR] [9212] [11:01:42.005][Info ] OpenXR Runtime:

    [XR] [9212] [11:01:42.005][Info ] UNKNOWN COMPANY, which is not a Unity supported partner

    [XR] [9212] [11:01:42.005][Info ] Unity OpenXR Features:

    [XR] [9212] [11:01:42.005][Info ] HPMixedRealityControllerProfile Standalone, MotionControllerFeaturePlugin Standalone: Microsoft, which is a Unity supported partner

    [XR] [9212] [11:01:42.005][Info ] KHRSimpleControllerProfile Standalone: Unity

    [XR] [9212] [11:01:42.005][Info ] Unity Support:

    [XR] [9212] [11:01:42.005][Info ] Unity doesn't support some aspects of the runtime and Unity OpenXR Features above. Please attempt to reproduce the issue with only Unity supported aspects before submitting an issue to Unity.

    [XR] [9212] [11:01:42.005][Info ]

    [XR] [9212] [11:01:42.005][Info ] ==== Last 20 Events ====

    [XR] [9212] [11:01:42.005][Info ]



    ==== End Unity OpenXR Diagnostic Report ====





    <RI> Initializing input.



    New input system (experimental) initialized

    <RI> Initialized touch support.



    UnloadTime: 0.757400 ms


    Capture2.PNG Capture1.PNG Capture3.PNG
     
  4. joejo

    joejo

    Unity Technologies

    Joined:
    May 26, 2016
    Posts:
    958
    First thing I would suggest is to just create a new project, manually add OpenXR plugin, enable it and see if it will run correctly. That will at least narrow things down a bit to just the OpenXR support in Unity.
     
  5. joejo

    joejo

    Unity Technologies

    Joined:
    May 26, 2016
    Posts:
    958
    Just want to remove as many variables from the equation as possible.
     
  6. LJ3N

    LJ3N

    Joined:
    May 8, 2020
    Posts:
    5
    Hello @joejo

    I finaly got it to work !
    I tried to do as you told me, so i created a new project and imported OpenXR and XR integration toolkit, BUILD it and it worked. The thing is with just that you don't have the HP Reverb G2 Controller Profile. So I added the OpenXR and Input Manager with MRFT (as they tell you to do in the Microsoft documentation), BUILD it and it worked again ! So I checked what was different in my original project and the only thing is (I don't know why) that I added the Motion Controller Model in the OpenXR project settings. I think this option only appears after you have used MRFT to import the input package. I disabled it (because I don't need it) and now my original project works !
     
  7. joejo

    joejo

    Unity Technologies

    Joined:
    May 26, 2016
    Posts:
    958
    Awesome! Sorry that gave you such trouble.