com.unity.inputsystem 0.2.10-preview

com.unity.inputsystem

Notes: processedReleased May 17, 2019

Browse versions

PreviousNext

Unity Compatibility

Minimum Unity: 2019.1

Package Dependencies

Features

  • Added a `MultiplayerEventSystem` class, which allows you use multiple UI event systems to control different parts of the UI by different players.
  • `InputSystemUIInputModule` now lets you specify an `InputActionAsset` in the `actionsAsset` property. If this is set, the inspector will populate all actions from this asset. If you have a `PlayerInput` component on the same game object, referencing the same `InputActionAsset`, the `PlayerInput` component will keep the actions on the `InputSystemUIInputModule` in synch, allowing easy setup of multiplayer UI systems.

📈 Improvements

  • `StickControl.x` and `StickControl.y` are now deadzoned, i.e. have `AxisDeadzone` processors on them. This affects all gamepads and joysticks.
  • - **NOTE:** The deadzoning is **independent** of the stick. Whereas the stack has a radial deadzones, `x` and `y` have linear deadzones. This means that `leftStick.ReadValue().x` is **not** necessary equal to `leftStick.x.ReadValue()`.
  • - This change also fixes the problem of noise from sticks not getting filtered out and causing devices such as the PS4 controller to constantly make itself `Gamepad.current`.
  • Redesigned `UIActionInputModule`
  • Added a button in the inspector to automatically assign actions from an input action asset based on commonly used action names.
  • Will now populate actions with useful defaults.
  • Removed `clickSpeed` property - will use native click counts from the OS where available instead.
  • Removed `sendEventsWhenInBackground` property.
  • Hiding `Touches` and `TrackedDevices` until we decide how to handle them.
  • Remove `moveDeadzone` property as it is made redundant by the action's dead zone.
  • Removed `UIActionInputModuleEnabler` component, `UIActionInputModule` will now enable itself.
  • Changed default button press point to 0.5.
  • Changed all constants in public API to match Unity naming conventions ("Constant" instead of "kConstant").
  • Changed namespace from `UnityEngine.Experimental.Input` to `UnityEngine.InputSystem`.
  • Generated wrapper code now has nicer formatting.
  • Renamed `UIActionInputModule` to `InputSystemUIInputModule`.
  • Nicer icons for `InputActionAssets` and `InputActions` and for `Button` and generic controls.
  • Change all public API using `IntPtr` to use unsafe pointer types instead.
  • `PlayerInput` will no longer disable any actions not in the currently active action map when disabling input or switching action maps.
  • Change some public fields into properties.
  • Input System project settings are now called "Input System Package" in the project window instead of "Input (NEW)".
  • Rename "Cancelled" -> "Canceled" (US spelling) in all APIs.

🔧 Bug Fixes

  • Adding devices to "Supported Devices" in input preferences not allowing to select certain device types (like "Gamepad").
  • Fixed scrolling in `UIActionInputModule`.
  • Fixed compiling the input system package in Unity 19.2 with ugui being moved to a package now.
  • In the Input System project settings window, you can no longer add a supported device twice.
  • #### Actions
  • Custom inspector for `PlayerInput` no longer adds duplicates of action events if `Invoke Unity Events` notification behavior is selected.
  • Fixed `Hold` interactions firing immediately before the duration has passed.
  • Fixed editing bindings or processors for `InputAction` fields in the inspector (Changes wouldn't persist before).

Features

  • #### Actions
  • `PlayerInput` can now handle `.inputactions` assets that have no control schemes.
  • - Will pair **all** devices mentioned by any of the bindings except if already paired to another player.