Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.

Official Unity support for OpenXR in preview

Discussion in 'AR/VR (XR) Discussion' started by rickmus, Dec 17, 2020.

Thread Status:
Not open for further replies.
  1. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    914
    Ok so there is definitely a bug in Unity3D but found a work around.

    The BUG: For some reason when trying to use the UI to add that Cosmos profile it borks the "Open XR Package Settings.asset" file causing duplicate entries in that file etc.

    The workaround:
    * Delete the "Open XR Package Settings.asset" file if its messed up.
    * Use VS-Code & find "nameUi: HTC Vive Cosmos Controller Support"
    * Set "m_enabled: 1" to enable it.
    * Save file & go back to Unity3D then re-open your settings window.
    * You can now normally add back your other profiles.
     
  2. DominiqueSandoz

    DominiqueSandoz

    Joined:
    Aug 29, 2017
    Posts:
    25
    Just wanted to express a thank you to Unity Tech people (@the_real_apoxol) and users (@jamie_xr et al) here trying to pin down the various controller pos/rot offsets. We could successfully ship a release yesterday, transitioning our app to OpenXR thanks to the annoying 45deg rot offset in SteamVR no longer being a problem in 1.17.16.

    made my week
     
  3. rasto61

    rasto61

    Joined:
    Nov 1, 2015
    Posts:
    349
    Appreciate that. Yes, that is ok, the problem is that tracked position is completely off, not just the pose, so even trying to add an offset to fix it doesnt work because the pivot is wrong, so rotating the hand messes it.
     
  4. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    Yes as I understand it Valve is waiting on microsoft to fix a driver issue in their WinMR interface for steam. I talked with valve and they dont have any public places to track the issue besides their forums.
     
    rasto61 likes this.
  5. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    That does look like a unity bug and we urge you to report it via `Help - Report a bug`. I know you found a workaround but without a repro case it is hard to fix it. I will look through some of my projects to see if any of them contain any duplicate entries in the settings as you were seeing.
     
  6. runeberg-valve

    runeberg-valve

    Joined:
    Jan 28, 2020
    Posts:
    34
    We have an upcoming fix for the WMR pose offsets with Microsoft, the fix is currently in alpha testing but will post here as soon as its released. An update on both SteamVR and the SteamVR Mixed Reality Driver is required.

    We are also currently collaborating with Facebook to get exact OpenXR Grip and Aim offsets for Touch controllers.
     
    Thomas-Mountainborn and rasto61 like this.
  7. runeberg-valve

    runeberg-valve

    Joined:
    Jan 28, 2020
    Posts:
    34
  8. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467

    We looked into this issue late last week and found and fixed the problem. The fix will not make it into the upcoming release as it was already built and ready to be pushed but will make it into the following release. Thank you for reporting the issue with such detail.
     
    zezba9000 likes this.
  9. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    I ran Cactus Cowboy 3 today for about 20 minutes in tutorial mode and another 10 in the normal game mode and so far it has not frozen. Are there any other steps needed to get it to freeze ? I am using the Oculus OpenXR runtime version 1.62.0 with an Oculus Quest 2. Does it happen with quest 1 or 2?

    I looked through the player log as well and there are a bunch of exceptions and warnings that appear to be coming from the game logic but they dont seem to be stopping the game from working.
     
  10. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    You could add both bindings to your actions if you are more specific.

    For Oculus XR
    <OculusGoController>/devicePosition


    For OpenXR:
    <XRController>/pointerPosition


    This works because the OculusGoController does not have pointerPosition so the second binding does not work on Oculus XR and the OculusGoController layout does not work on OpenXR so when using OpenXR you are good. Hope that helps
     
  11. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    Is there something specific you need to do to get WMR controllers tracking? I tried with both the WMR OpenXR and SteamVR OpenXR runtimes, but neither having tracking controllers in Unity.

    upload_2021-6-29_7-35-8.png
     
  12. dpcactus

    dpcactus

    Joined:
    Jan 13, 2020
    Posts:
    39
    I get the reports usually from Rift S users. Personally, never had this issue.
     
  13. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    What headset are you using that is not working? What bindings are you using for tracking?
     
  14. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    I will see if someone on the team with a Rift S can try this.
     
    dpcactus likes this.
  15. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    The old HP WMR headset (though it's the developer edition, hope that doesn't matter). From XRController, both pointer and device position / orientation.
     
  16. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    I honestly dont know if it is supported by the OpenXR runtimes. Do you have a specific model number that I can send to microsoft and ask?
     
  17. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    Well, it tracks the HMD and renders to it just fine, so I don't think that's the issue. If I run a build, the position of my controllers is tracking, but not their orientation. The log is spammed with a null ref from the ActionBasedController.

    NullReferenceException: Object reference not set to an instance of an object
    at UnityEngine.InputSystem.InputActionProperty.get_action () [0x0000f] in <6d818aa25f524be691bed3dcbad53fe1>:0
    at UnityEngine.XR.Interaction.Toolkit.ActionBasedController.UpdateTrackingInput (UnityEngine.XR.Interaction.Toolkit.XRControllerState controllerState) [0x0000c] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at UnityEngine.XR.Interaction.Toolkit.XRBaseController.OnBeforeRender () [0x00019] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at (wrapper delegate-invoke) <Module>.invoke_void()
    at UnityEngine.BeforeRenderHelper.Invoke () [0x0002d] in <6e7a9b489b134053bc0600a292ec678e>:0
    at UnityEngine.Application.InvokeOnBeforeRender () [0x00001] in <6e7a9b489b134053bc0600a292ec678e>:0

    I actually suddenly have the same issue with the controllers not tracking in the editor with SteamVR using my Quest 2. Works fine in the build, but not tracking in the editor. Tested back to back with my Vive and Knuckles, those track fine in the editor.
     
  18. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    If you can distill the issue down to a sample project and can report a bug that would be the best. If you do please let me know the issue number and I can take a look at it faster and see if it is something simple.
     
  19. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    I was trying to recreate the issue in a separate project with the OpenXR controller sample, but there they are tracking. In my project though, I am getting these errors, whereas there are no errors in the sample project.

    Could not recreate input device 'Microsoft Windows MR Controller OpenXR (XRInputV1)' with layout 'WMRSpatialController' and variants 'Default' after domain reload
    UnityEngine.InputSystem.LowLevel.NativeInputRuntime/<>c__DisplayClass7_0:<set_onUpdate>b__0 (UnityEngineInternal.Input.NativeInputUpdateType,UnityEngineInternal.Input.NativeInputEventBuffer*)
    UnityEngineInternal.Input.NativeInputSystem:NotifyUpdate (UnityEngineInternal.Input.NativeInputUpdateType,intptr)
    UnityEditor.EditorAssemblies:processInitializeOnLoadAttributes (System.Type[])

    Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/Devices/InputDeviceBuilder.cs:337)
    UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InstantiateLayout (UnityEngine.InputSystem.Layouts.InputControlLayout layout, UnityEngine.InputSystem.Utilities.InternedString variants, UnityEngine.InputSystem.Utilities.InternedString name, UnityEngine.InputSystem.InputControl parent) (at Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/Devices/InputDeviceBuilder.cs:193)
    UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InstantiateLayout (UnityEngine.InputSystem.Utilities.InternedString layout, UnityEngine.InputSystem.Utilities.InternedString variants, UnityEngine.InputSystem.Utilities.InternedString name, UnityEngine.InputSystem.InputControl parent) (at Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/Devices/InputDeviceBuilder.cs:102)
    UnityEngine.InputSystem.Layouts.InputDeviceBuilder.Setup (UnityEngine.InputSystem.Utilities.InternedString layout, UnityEngine.InputSystem.Utilities.InternedString variants, UnityEngine.InputSystem.Layouts.InputDeviceDescription deviceDescription) (at Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/Devices/InputDeviceBuilder.cs:51)
    UnityEngine.InputSystem.InputDevice.Build[TDevice] (System.String layoutName, System.String layoutVariants, UnityEngine.InputSystem.Layouts.InputDeviceDescription deviceDescription) (at Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/Devices/InputDevice.cs:678)
    UnityEngine.InputSystem.InputManager.AddDevice (UnityEngine.InputSystem.Utilities.InternedString layout, System.Int32 deviceId, System.String deviceName, UnityEngine.InputSystem.Layouts.InputDeviceDescription deviceDescription, UnityEngine.InputSystem.InputDevice+DeviceFlags deviceFlags, UnityEngine.InputSystem.Utilities.InternedString variants) (at Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/InputManager.cs:1033)
    UnityEngine.InputSystem.InputManager.RestoreDeviceFromSavedState (UnityEngine.InputSystem.InputManager+DeviceState& deviceState, UnityEngine.InputSystem.Utilities.InternedString layout) (at Library/PackageCache/com.unity.inputsystem@1.0.2/InputSystem/InputManager.cs:3420)
    UnityEngine.InputSystem.LowLevel.<>c__DisplayClass7_0:<set_onUpdate>b__0(NativeInputUpdateType, NativeInputEventBuffer*)
    UnityEngineInternal.Input.NativeInputSystem:NotifyUpdate(NativeInputUpdateType, IntPtr)
    UnityEngineInternal.Input.NativeInputSystem:Update(NativeInputUpdateType)
    UnityEditor.EditorAssemblies:processInitializeOnLoadAttributes(Type[])
     
  20. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    Filed bug report 1346874 on that XRInputSybsystem.TryRecenter() does nothing on OpenXR. How are other OpenXR devs handling teleporting?
     
  21. jamie_xr

    jamie_xr

    Joined:
    Feb 28, 2020
    Posts:
    50
    @the_real_apoxol Did anybody take a look at our profiles regarding the intermittent performance issues. We don't get this on Oculus XR SDK. I believe it's an issue with open XR. I'm gonna dig out our old OpenVR integration and see if we can repro the issue there.
     
  22. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    Ok see the issue we will look into it.
     
    Thomas-Mountainborn likes this.
  23. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    Those errors are known issue with the InputSystem. They should be harmless but you can also resolve them by upgrading to the latest preview version of the InputSystem package.

    It sounds like there is something different between your main project and the test project. I am not sure what would stop the hands from tracking in your project. Maybe send the player.log file from a standalone build where the tracking isnt working?
     
  24. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    We have trying reproducing some reports of freezing on the Oculus Runtime but have not been able to reproduce it yet. Which profiles are you speaking off ?
     
  25. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    This is the log using the WMR runtime, where only the position is tracked but not the orientation. I just checked the build using the WMR headset through SteamVR OpenXR, and there the controllers do track fully.

    However, in the editor, only the Oculus native runtime currently has tracking controllers, which is rather annoying. I would really like to getting SteamVR controllers to track inside the editor again.

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


    [XR] [25636] [18:11:18.086][Info ] ==== Report Reason: System Startup Completed ====


    [XR] [25636] [18:11:18.086][Info ] ==== OpenXR Support Details ====
    [XR] [25636] [18:11:18.086][Info ] OpenXR Runtime:
    [XR] [25636] [18:11:18.086][Info ] Microsoft, which is a Unity supported partner
    [XR] [25636] [18:11:18.086][Info ] Unity OpenXR Features:
    [XR] [25636] [18:11:18.086][Info ] HTCViveControllerProfile Standalone, MicrosoftMotionControllerProfile Standalone, OculusTouchControllerProfile Standalone, ValveIndexControllerProfile Standalone: Unity
    [XR] [25636] [18:11:18.086][Info ] Unity Support:
    [XR] [25636] [18:11:18.086][Info ] Unity supports the runtime and Unity OpenXR Features above. When requesting assistance, please copy the OpenXR section from ==== Start Unity OpenXR Diagnostic Report ==== to ==== End Unity OpenXR Diagnostic Report ==== to the bug or forum post.
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] ==== OpenXR Init Info ====
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Stage 1 Missing Entry Points: (1)
    [XR] [25636] [18:11:18.086][Info ] xrInitializeLoaderKHR
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Stage 2 Missing Entry Points: (9)
    [XR] [25636] [18:11:18.086][Info ] xrGetD3D12GraphicsRequirementsKHR
    [XR] [25636] [18:11:18.086][Info ] xrGetVulkanInstanceExtensionsKHR
    [XR] [25636] [18:11:18.086][Info ] xrGetVulkanDeviceExtensionsKHR
    [XR] [25636] [18:11:18.086][Info ] xrGetVulkanGraphicsDeviceKHR
    [XR] [25636] [18:11:18.086][Info ] xrGetVulkanGraphicsRequirementsKHR
    [XR] [25636] [18:11:18.086][Info ] xrCreateVulkanInstanceKHR
    [XR] [25636] [18:11:18.086][Info ] xrCreateVulkanDeviceKHR
    [XR] [25636] [18:11:18.086][Info ] xrGetVulkanGraphicsDevice2KHR
    [XR] [25636] [18:11:18.086][Info ] xrGetVulkanGraphicsRequirements2KHR
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] ==== OpenXR Provider Info ====
    [XR] [25636] [18:11:18.086][Info ] Spec Version: 1.0.17
    [XR] [25636] [18:11:18.086][Info ] Provider Version: 1.2.3
    [XR] [25636] [18:11:18.086][Info ] App: Vermillion 0.6.2 #3843909571
    [XR] [25636] [18:11:18.086][Info ] Engine: 2021.1.11f1 #3459414510
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] ==== OpenXR Runtime Info ====
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Features requested to be enabled: 4
    [XR] [25636] [18:11:18.086][Info ] Name=HTC Vive Controller Profile Extension=NA Version=0.0.1
    [XR] [25636] [18:11:18.086][Info ] Name=Microsoft Motion Controller Profile Extension=NA Version=0.0.1
    [XR] [25636] [18:11:18.086][Info ] Name=Oculus Touch Controller Profile Extension=NA Version=0.0.1
    [XR] [25636] [18:11:18.086][Info ] Name=Valve Index Controller Profile Extension=NA Version=0.0.1
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Features with extensions that failed to be enabled: 0
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Available Extensions: (21)
    [XR] [25636] [18:11:18.086][Info ] Name=XR_KHR_win32_convert_performance_counter_time SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_KHR_D3D11_enable SpecVersion=5
    [XR] [25636] [18:11:18.086][Info ] Name=XR_KHR_D3D12_enable SpecVersion=7
    [XR] [25636] [18:11:18.086][Info ] Name=XR_KHR_composition_layer_depth SpecVersion=5
    [XR] [25636] [18:11:18.086][Info ] Name=XR_KHR_composition_layer_color_scale_bias SpecVersion=5
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_unbounded_reference_space SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_spatial_anchor SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_perception_anchor_interop SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_win32_appcontainer_compatible SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_conformance_automation SpecVersion=3
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_composition_layer_reprojection SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_spatial_graph_bridge SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_eye_gaze_interaction SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_hand_interaction SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_hand_tracking SpecVersion=4
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_hand_tracking_mesh SpecVersion=3
    [XR] [25636] [18:11:18.086][Info ] Name=XR_MSFT_controller_model SpecVersion=2
    [XR] [25636] [18:11:18.086][Info ] Name=XR_KHR_visibility_mask SpecVersion=2
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_samsung_odyssey_controller SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_hp_mixed_reality_controller SpecVersion=1
    [XR] [25636] [18:11:18.086][Info ] Name=XR_EXT_debug_utils SpecVersion=4
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Available Layers: (0)
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Runtime Name: Windows Mixed Reality Runtime
    [XR] [25636] [18:11:18.086][Info ] Runtime Version: 106.2105.21002
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Form factor: XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY
    [XR] [25636] [18:11:18.086][Info ]
    [XR] [25636] [18:11:18.086][Info ] Spec extensions enabled: (4)
    [XR] [25636] [18:11:18.087][Info ] Name=XR_KHR_D3D11_enable Version=5
    [XR] [25636] [18:11:18.087][Info ] Name=XR_KHR_composition_layer_depth Version=5
    [XR] [25636] [18:11:18.087][Info ] Name=XR_KHR_visibility_mask Version=2
    [XR] [25636] [18:11:18.087][Info ] Name=XR_KHR_win32_convert_performance_counter_time Version=1
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Available Reference Spaces: (3)
    [XR] [25636] [18:11:18.087][Info ] Name: XR_REFERENCE_SPACE_TYPE_VIEW
    [XR] [25636] [18:11:18.087][Info ] Name: XR_REFERENCE_SPACE_TYPE_LOCAL
    [XR] [25636] [18:11:18.087][Info ] Name: XR_REFERENCE_SPACE_TYPE_STAGE
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Instance Id : 0x1
    [XR] [25636] [18:11:18.087][Info ] System Id : 0x1
    [XR] [25636] [18:11:18.087][Info ] Session Id : 0x2
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Available View Configuration Types: (1)
    [XR] [25636] [18:11:18.087][Info ] View Configuration Type: XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO (Selected) View configuration FovMutable=True
    [XR] [25636] [18:11:18.087][Info ] View [0]: Recommended Width=2200 Height=2200 SampleCount=1
    [XR] [25636] [18:11:18.087][Info ] View [0]: Maximum Width=4404 Height=4404 SampleCount=4
    [XR] [25636] [18:11:18.087][Info ] View [1]: Recommended Width=2200 Height=2200 SampleCount=1
    [XR] [25636] [18:11:18.087][Info ] View [1]: Maximum Width=4404 Height=4404 SampleCount=4
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Available Environment Blend Mode: (1)
    [XR] [25636] [18:11:18.087][Info ] Environment Blend Mode (XR_ENVIRONMENT_BLEND_MODE_OPAQUE) : (Selected)
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] System Properties: Name=Windows Mixed Reality VendorId=1118
    [XR] [25636] [18:11:18.087][Info ] System Graphics Properties: MaxWidth=16384 MaxHeight=16384 MaxLayers=16
    [XR] [25636] [18:11:18.087][Info ] System Tracking Properties: OrientationTracking=True PositionTracking=True
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] ==== OpenXR Input ====
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Action Set Data:
    [XR] [25636] [18:11:18.087][Info ] Name: htcvivecontroller Desired Profile: /interaction_profiles/htc/vive_controller
    [XR] [25636] [18:11:18.087][Info ] Name: microsoftmotioncontroller Desired Profile: /interaction_profiles/microsoft/motion_controller
    [XR] [25636] [18:11:18.087][Info ] Name: oculustouchcontroller Desired Profile: /interaction_profiles/oculus/touch_controller
    [XR] [25636] [18:11:18.087][Info ] Name: valveindexcontroller Desired Profile: /interaction_profiles/valve/index_controller
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] ==== OpenXR Swapchain Details ====
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Render Mode: Single Pass Instanced
    [XR] [25636] [18:11:18.087][Info ] Depth Submission Mode: None
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] Swapchain Formats: [c:29] 91 28 87 40 20 45 55
    [XR] [25636] [18:11:18.087][Info ] Creating swapchain for view 0 with dimensions Width=2200 Height=2200 SampleCount=1
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] ==== Last 20 non-XR_SUCCESS returns ====
    [XR] [25636] [18:11:18.087][Info ] [SUCCESS] xrGetReferenceSpaceBoundsRect: XR_SPACE_BOUNDS_UNAVAILABLE (3x)
    [XR] [25636] [18:11:18.087][Info ] [SUCCESS] xrPollEvent: XR_EVENT_UNAVAILABLE (3x)
    [XR] [25636] [18:11:18.087][Info ]
    [XR] [25636] [18:11:18.087][Info ] ==== Last 20 Events ====
    [XR] [25636] [18:11:18.087][Info ] OpenXRSession::HandleSessionStateChangedEvent: XR_SESSION_STATE_UNKNOWN->XR_SESSION_STATE_IDLE
    [XR] [25636] [18:11:18.087][Info ] OpenXRSession::HandleSessionStateChangedEvent: XR_SESSION_STATE_IDLE->XR_SESSION_STATE_READY
    [XR] [25636] [18:11:18.087][Info ] OpenXRSession::HandleSessionStateChangedEvent: XR_SESSION_STATE_READY->XR_SESSION_STATE_SYNCHRONIZED
    [XR] [25636] [18:11:18.087][Info ] OpenXRSession::HandleSessionStateChangedEvent: XR_SESSION_STATE_SYNCHRONIZED->XR_SESSION_STATE_VISIBLE
    [XR] [25636] [18:11:18.087][Info ] OpenXRSession::HandleSessionStateChangedEvent: XR_SESSION_STATE_VISIBLE->XR_SESSION_STATE_FOCUSED
    [XR] [25636] [18:11:18.087][Info ]

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


    NullReferenceException: Object reference not set to an instance of an object
    at UnityEngine.InputSystem.InputActionProperty.get_action () [0x0000f] in <6d818aa25f524be691bed3dcbad53fe1>:0
    at UnityEngine.XR.Interaction.Toolkit.ActionBasedController.UpdateTrackingInput (UnityEngine.XR.Interaction.Toolkit.XRControllerState controllerState) [0x0000c] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at UnityEngine.XR.Interaction.Toolkit.XRBaseController.OnBeforeRender () [0x00019] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at (wrapper delegate-invoke) <Module>.invoke_void()
    at UnityEngine.BeforeRenderHelper.Invoke () [0x0002d] in <6e7a9b489b134053bc0600a292ec678e>:0
    at UnityEngine.Application.InvokeOnBeforeRender () [0x00001] in <6e7a9b489b134053bc0600a292ec678e>:0

    [XR] [OpenXR Input]: Application space recovered
    NullReferenceException: Object reference not set to an instance of an object
    at UnityEngine.InputSystem.InputActionProperty.get_action () [0x0000f] in <6d818aa25f524be691bed3dcbad53fe1>:0
    at UnityEngine.XR.Interaction.Toolkit.ActionBasedController.UpdateTrackingInput (UnityEngine.XR.Interaction.Toolkit.XRControllerState controllerState) [0x0000c] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at UnityEngine.XR.Interaction.Toolkit.XRBaseController.UpdateController () [0x0002e] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at UnityEngine.XR.Interaction.Toolkit.XRBaseController.Update () [0x00000] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0

    XRTextureManager::RequestCreateTexture
    XRTextureManager::SetupRenderTextureFromXRRequest (id: 3 col: 000002476CBE5C38 d: 0000000000000000)
    RenderTexture::Create (id: 3)
    IVRDeviceCallback_CreateEyeTextureResources 000002476CBE5C38
    NullReferenceException: Object reference not set to an instance of an object
    at UnityEngine.InputSystem.InputActionProperty.get_action () [0x0000f] in <6d818aa25f524be691bed3dcbad53fe1>:0
    at UnityEngine.XR.Interaction.Toolkit.ActionBasedController.UpdateTrackingInput (UnityEngine.XR.Interaction.Toolkit.XRControllerState controllerState) [0x0000c] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at UnityEngine.XR.Interaction.Toolkit.XRBaseController.OnBeforeRender () [0x00019] in <db36ff40ba0a455fb9d1141c0fdc30fa>:0
    at (wrapper delegate-invoke) <Module>.invoke_void()
    at UnityEngine.BeforeRenderHelper.Invoke () [0x0002d] in <6e7a9b489b134053bc0600a292ec678e>:0
    at UnityEngine.Application.InvokeOnBeforeRender () [0x00001] in <6e7a9b489b134053bc0600a292ec678e>:0

    ...
     
    Last edited: Jun 30, 2021
  26. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    Is your input still locked to your game view?
     
  27. dpcactus

    dpcactus

    Joined:
    Jan 13, 2020
    Posts:
    39
    On the Steam Forum, someone with a Quest 2 claims the same issue. I tried to reproduce it today but I wasn't able to. So far I only get this from users.

    Edit: Had it happen to myself! Thing is i cannot provide anything useful regarding this issue. The Player.log has no error and was stopped in the middle of the game. Last line was a regular Debug.Log from my codes. No errors that would help. RAM utilization was normal, so no memory leaking. Windows Eventmanger has logged "The program CactusCowboy3.exe version 2020.3.0.46406 stopped interacting with Windows and was closed. " Oculus Software keeps running normal.
    I was using OpenXR Plugin v1.2.3 at this point.
     
    Last edited: Jun 30, 2021
  28. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    I believe that the OpenXR package shows an error if it isn't, so I would say so, yes.
     
  29. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    Just to clarify, you are saying that Oculus Controllers do not track anymore in the editor even with Oculus OpenXR runtime active?
     
  30. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    We did try this with a Rift-S, one of the OpenXR team members played the game for about 30 minutes without any issues. Is there anything in particular you need to be doing in the game to make this happen?
     
  31. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    Tracking in editor and in build:

    OpenXR SteamVR with SteamVR controllers
    Oculus native runtime

    Not tracking in editor, tracking in build:

    OpenXR SteamVR with Touch controllers
    OpenXR Oculus
    OpenXR SteamVR with WMR

    Not tracking orientation in build:

    OpenXR WMR
     
  32. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    One more point of clarification sorry. This doesnt happen in a new project correct?
     
  33. Thomas-Mountainborn

    Thomas-Mountainborn

    Joined:
    Jun 11, 2015
    Posts:
    454
    Indeed, in a new project everything is tracking within the editor.
     
  34. dpcactus

    dpcactus

    Joined:
    Jan 13, 2020
    Posts:
    39
    According to user feedback, it happened while playing. Same happened to me yesterday. Reports state(such as in Steam Discussions as you can see), it happens apparently more often in Level 2 than in Level 1. But than again, I tried a couple times yesterday to see what's causing it without success. If only the player.log would give a hint.

    Is there any specific oculus log file I'm unaware of that I can check?
     
  35. jamie_xr

    jamie_xr

    Joined:
    Feb 28, 2020
    Posts:
    50
    I posed it into my original message on this subject.
    It's here: https://drive.google.com/file/d/1dzQA1erznHvMbKJYM-j2HrORnVziAPO-/view?usp=sharing

    Apologies I understand one big forum thread is probably less than optimal for something like this!
    Thanks for the help
     
    dpcactus likes this.
  36. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    It is hard to tell from just the profiler data as there is no GPU data in the profile. The majority of the time the CPU is waiting is for the GFX thread to finish which indicates some form of GPU bound issue. We would need you to submit the project that is causing this issue or a sample project that reproduces the issue, as a but with `Help -> Report a bug` to investigate any further on our end. The only things I can think of to try on your end would be to try `Single Passed Instancing` and disable depth submission. If you do submit a bug please post your issue number so we can find it faster.
     
  37. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    Do you know if it happens with the Oculus Runtime or is it just Steam runtime? Sorry if I already asked but it is very hard to track individual issues when they are packed into this giant thread.
     
  38. dpcactus

    dpcactus

    Joined:
    Jan 13, 2020
    Posts:
    39
    Only Oculus Runtime, SteamVR works just fine. Currently I suggest user who run into this issue to switch their OpenXR runtime.
     
  39. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    If it is only happening on one runtime then it is likely an issue in the runtime itself. Have you tried posting on the Oculus forums to see if you can get help there from the oculus team?
     
  40. the_real_apoxol

    the_real_apoxol

    Unity Technologies

    Joined:
    Dec 18, 2020
    Posts:
    467
    The OpenXR team would like to thank everyone who was provided feedback and bug reports since we released the preview build back in 2020. While this thread was originally an announcement for OpenXR being in preview is has transitioned into a catch all for OpenXR issues that has made it difficult to track and respond to those issues. We fully intend to continue to support these issues but would like to do so in individual threads. To that point we are going to close this thread and we ask that anyone with outstanding issues that are being discussed to please open a new thread so we can continue the conversation there. Thank you again for working with us to continue to improve OpenXR within Unity.
     
Thread Status:
Not open for further replies.