ExtendRealityLtd / ExtendRealityLtd/Tilia.Input.UnityInputSystem
Duplicated PlayerInput.cs in prefabs disable input in builds for Windows Mixed Reality
- Dominant language
- C#
- Stars
- 3
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
### Environment
* Code source: Tilia.Input.UnityInputSystem
* Code version: 2.4.3
* Platform version: Unity 2021.3.24
* 3rd party dependencies: Windows Mixed Reality Portal
### Steps to reproduce
In a simple scene, or in the tilia farm, add the `UnityInputSystem.Poses.GenericXR.prefab` into the scene. Optionally, have the pointers follow the prefab's `LeftPointer` and `RightPointer` instead of the `LeftControllerAlias` and `RightControllerAlias`. If not there already, add the `UnityInputSystem.InputActionMappings.GenericXR.prefab` and map actions to it.
### Expected behavior
After a build, and using WMR OpenXR, pointers follow the controller pointer pose, like in the editor.
### Current behavior
Controllers are tracked, but no controller input is received.
### Testing done
I tested multiple configurations and builds. It seems that if multiple instances of `PlayerInput.cs` are enabled, the Windows Mixed Reality OpenXR runtime stops processing input. This happens only on builds, and only for WMR. Disabling all but one of the scripts fixes the issue.
I recommend adding a script to both Tilia input prefabs that `OnReset()` checks for enabled instances of `PlayerInput.cs` in the scene hierarchy, and disables it from its own prefab if another instance is active. A debug warning would be useful as well.
Contributor guide
Assessment
This issue has not been assessed yet.