Gamepad input
Gamepad handlers
Feature | UIM | UIS | XInput | RawInput |
---|---|---|---|---|
Button detection | ✔️ | ✔️ | ✔️ | ✔️ |
Joystick support | ✔️ | ✔️ | ✔️ | ✔️ |
Vibration | ❌ | ✔️ | ✔️ | ✔️ |
Joycon merging | ✔️ | ✔️ | ✔️ | ✔️ |
Dualshock & Dualsense color bar support | ❌ | ✔️ | ❌ | ✔️ |
Which gamepad handler should I pick?
For a simple prototype or a gamejam game that is made for a keyboard, with an additional support for a gamepad, you can just stick with the default UIM.
If you want to have basic controller support (vibrations, device info) you can select xinput.
If you want to add support for specific gamepads (e.g. changing the light bar on dualsense, or using motion controls) you will have to use either UIS or RawInput.
Currently RawInput is the best option that gives you the most control.
Here's a basic overview
UIM < XInput < UIS < RawInput
How to disable the built in gamepad handler
Add a new Scripting Define Symbol in Player Settings qASIC_CABLEBOX_DISABLE_UIM_GAMEPADS