Skip to content
Open
1 change: 1 addition & 0 deletions Packages/com.unity.inputsystem/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- Migrated sample scenes to use Universal Render Pipeline (URP) with Built-in Render Pipeline fallback shaders. The URP package is now required to run the samples. (ISX-2343)
- Changed the UI for `Actions.inputactions` asset to use UI Toolkit framework.
- Changed the UI for `InputSystem.inputsettings` asset to use UI Toolkit framework.
- Added documentation for rumble support on Android and iOS.

### Added

Expand Down
16 changes: 15 additions & 1 deletion Packages/com.unity.inputsystem/Documentation~/Gamepad.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,21 @@ Gamepad.current.SetMotorSpeeds(0.25f, 0.75f);
>* PS4, Xbox, and Switch controllers, when connected to their respective consoles. Only supported if you install console-specific input packages in your Project.
>* PS4 controllers, when connected to Mac or Windows/UWP computers.
>* Xbox controllers on Windows.

>* Gamepads on Android. Rumble support varies with Android OS version and requires Unity 6000.6 or later.
> * Rumble automatically stops about 10 seconds after the last [`SetMotorSpeeds`](xref:UnityEngine.InputSystem.Haptics.IDualMotorRumble) call unless you explicitly stop it.
> * Android 12 or later:
> * Supports most Bluetooth-connected gamepads with rumble support including PS4, PS5, and Xbox controllers.
> * If the gamepad is connected with a USB cable, rumble support might vary.
> * If the gamepad supports more than one motor, you can control the speed of each motor individually.
> * Android 11 or earlier:
> * Rumble support is limited.
> * Only one motor is supported. If the gamepad has more than one motor, the higher value of the left and right motor speed applies to both.
> * On some devices, motor speed control is limited. You can only set the left and right motor speed to either `1.0` (maximum speed) or `0.0` (turned off).
> * Gamepads on iOS, tvOS, and visionOS. Requires Unity 6000.6 or later.
> * Supports rumble on gamepads that Apple's GameController framework recognizes, including PS4, PS5, Xbox, and Switch Pro controllers.
> * If the gamepad supports left and right motors, you can control the speed of each motor individually. Otherwise, the higher value of the left and right motor speed applies to all motors on the gamepad.
> * The first [`SetMotorSpeeds`](xref:UnityEngine.InputSystem.Haptics.IDualMotorRumble) call allocates rumble resources, which adds latency.
> * When you set all motor speeds to `0.0`, an inactivity timer starts. After two minutes, the system releases rumble resources to preserve the controller's battery. The next [`SetMotorSpeeds`](xref:UnityEngine.InputSystem.Haptics.IDualMotorRumble) call reallocates resources and again incurs allocation latency.
[//]: # (TODO: are we missing any supported configs?)

### Pausing, resuming, and stopping haptics
Expand Down
Loading