Skip to content

Duplicated PlayerInput.cs in prefabs disable input in builds for Windows Mixed Reality #54

@jorgeolothar

Description

@jorgeolothar

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions