Enum InputDeviceChange
Indicates what type of change related to an InputDevice occurred.
Namespace: UnityEngine.InputSystem
Syntax
public enum InputDeviceChange
Remarks
Use onDeviceChange to receive notifications about changes to the input device setup in the system.
InputSystem.onDeviceChange +=
(device, change) =>
{
switch (change)
{
case InputDeviceChange.Added:
Debug.Log($"Device {device} was added");
break;
case InputDeviceChange.Removed:
Debug.Log($"Device {device} was removed");
break;
}
};
Fields
Name | Description | Value |
---|---|---|
Added | A new device was added to the system. This is triggered after the device has already been added, i.e. it already appears on devices. See also AddDevice<TDevice>(String) and added. |
0 |
Removed | An existing device was removed from the system. This is triggered after the device has already been removed, i.e. it already has been cleared from devices. Other than when a device is removed programmatically, this happens when a device is unplugged from the system. Subsequent to the notification, the system will remove the InputDevice instance from its list and remove the device's recorded input state. See also RemoveDevice(InputDevice). |
1 |
Disconnected | A device reported by the UnityEngine.InputSystem.LowLevel.IInputRuntime was Removed but was retained by the system as disconnectedDevices. See also disconnectedDevices. |
2 |
Reconnected | A device that was previously retained as Disconnected has been re-discovered and has been Added to the system again. See also disconnectedDevices. |
3 |
Enabled | An existing device was re-enabled after having been Disabled. See also EnableDevice(InputDevice) and enabled. |
4 |
Disabled | An existing device was disabled. See also DisableDevice(InputDevice, Boolean) and enabled. |
5 |
UsageChanged | The usages on a device have changed. This may signal, for example, that what was the right hand XR controller before is now the left hand controller. See also SetDeviceUsage(InputDevice, String) and usages. |
6 |
ConfigurationChanged | The configuration of a device has changed. This may signal, for example, that the layout used by the keyboard has changed or that, on a console, a gamepad has changed which player ID(s) it is assigned to. See also DeviceConfigurationEvent and QueueConfigChangeEvent(InputDevice, Double). |
7 |
SoftReset | Device is being "soft" reset but in a way that excludes dontReset controls such as mouse positions. This can happen during application focus changes (see backgroundBehavior) or when ResetDevice(InputDevice, Boolean) is called explicitly. This notification is sent before the actual reset happens. |
8 |
HardReset | Device is being "hard" reset, i.e. every control is reset to its default value. This happens only when explicitly forced through ResetDevice(InputDevice, Boolean). This notification is sent before the actual reset happens. |
9 |