InputLayoutLoader.cs
920 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#if UNITY_INPUT_SYSTEM
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Layouts;
using UnityEngine.InputSystem.XR;
using UnityEngine.XR;
using UnityEngine.XR.ARSubsystems;
using Inputs = UnityEngine.InputSystem.InputSystem;
#if UNITY_EDITOR
using UnityEditor;
#endif
namespace UnityEngine.XR.ARKit
{
#if UNITY_EDITOR
[InitializeOnLoad]
#endif
public class InputLayoutLoader
{
#if UNITY_EDITOR
static InputLayoutLoader()
{
RegisterLayouts();
}
#endif
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.SubsystemRegistration)]
static void RegisterLayouts()
{
Inputs.RegisterLayout<HandheldARInputDevice>(
matches: new InputDeviceMatcher()
.WithInterface(XRUtilities.InterfaceMatchAnyVersion)
.WithProduct("(ARKit)")
);
}
}
}
#endif