Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Could not create a device for 'OpenXR Right/Left Hand (XRInputV1)' #11437

Closed
IvayloBozhilov opened this issue Mar 28, 2023 · 1 comment
Closed

Comments

@IvayloBozhilov
Copy link

IvayloBozhilov commented Mar 28, 2023

This issue has been migrated a new MRTK repository, and the status of this issue will now be tracked at the following location:


Description:

Basic Hololens 2 application throws an error, whenever I make the pinch/click motion in order to move a object with the object manipulator component.

The error is:
"Could not create a device for 'OpenXR Right Hand (XRInputV1)' (exception: System.StackOverflowException: The requested operation caused a stack overflow.
at (wrapper managed-to-native) System.Object.__icall_wrapper_ves_icall_array_new_specific(intptr,int)"

Steps to reproduce the behavior:

  1. Create a 3D Unity project with URP.
  2. Import MRTK3 and OpenXR plugin with the Microsoft Mixed Reality Feature Tool.
  3. Configure the project. Enable OpenXR and configure the project for Hololens 2 and UWP.
  4. Create simple scene. Add a MRTK XR Rig, MRTKInputSimulator and Cube with the Object Manipulator component.
  5. Enable Hologhraphic Remoting for Play Mode.
  6. Start the app and watch it open from the Hololens 2.
  7. Find the cube and start moving it around.
  8. As soon as you pinch the cube the aforementioned error shows up in the console, but you can still move the cube.

Expected behavior:

The error does not appear when you try to move the cube.

My setup:

  • Unity Version 2022.2.10f1
  • MRTK Version 3.0

Target platform:

  • HoloLens 2

Additional context:
If I build the application and deploy it to the Hololens 2, it crashes as soon as i perform the "pinch to move action" on the cube.
I provide the Log file:

UnityPlayer (2).log

This is the "full" error message:

Could not create a device for 'OpenXR Right Hand (XRInputV1)' (exception: System.StackOverflowException: The requested operation caused a stack overflow.
at (wrapper managed-to-native) System.Object.__icall_wrapper_ves_icall_array_new_specific(intptr,int)
at System.Array.Resize[T] (T[]& array, System.Int32 newSize) [0x00029] in <5d4cbfbeb62e454f98e19b231866113e>:0
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.AddChildren (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputDevice+ControlBitRangeNode left, UnityEngine.InputSystem.InputDevice+ControlBitRangeNode right) [0x00020] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1129
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0002d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:972
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.InsertControlBitRangeNode (UnityEngine.InputSystem.InputDevice+ControlBitRangeNode& parent, UnityEngine.InputSystem.InputControl control, System.Int32& controlIndiciesNextFreeIndex, System.UInt16 startOffset) [0x0016d] in .\Library\PackageCache\[email protected]\InputSystem\Devices\InputDeviceBuilder.cs:1010
at UnityEngine.InputSystem.Layouts.InputDeviceBuilder.

@AMollis
Copy link
Member

AMollis commented Mar 28, 2023

@IvayloBozhilov this looks like a duplicate of the following issue

This issue is a Unity bug with com.unity.inputsystem 1.5.0:

Please try com.unity.inputsystem 1.5.1 once available. You can also try grabbing the source for the OSS project

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants