sdlRumbleJoystickTriggers function joystick
- Pointer<
SdlJoystick> joystick, - int leftRumble,
- int rightRumble,
- int durationMs,
Start a rumble effect in the joystick's triggers.
Each call to this function cancels any previous trigger rumble effect, and calling it with 0 intensity stops any rumbling.
Note that this is rumbling of the triggers and not the game controller as a whole. This is currently only supported on Xbox One controllers. If you want the (more common) whole-controller rumble, use SDL_RumbleJoystick() instead.
This function requires you to process SDL events or call SDL_UpdateJoysticks() to update rumble state.
\param joystick the joystick to vibrate. \param left_rumble the intensity of the left trigger rumble motor, from 0 to 0xFFFF. \param right_rumble the intensity of the right trigger rumble motor, from 0 to 0xFFFF. \param duration_ms the duration of the rumble effect, in milliseconds. \returns true on success or false on failure; call SDL_GetError() for more information.
\threadsafety It is safe to call this function from any thread.
\since This function is available since SDL 3.2.0.
\sa SDL_RumbleJoystick
extern SDL_DECLSPEC bool SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms)
Implementation
bool sdlRumbleJoystickTriggers(
Pointer<SdlJoystick> joystick,
int leftRumble,
int rightRumble,
int durationMs,
) {
final sdlRumbleJoystickTriggersLookupFunction = _libSdl
.lookupFunction<
Uint8 Function(
Pointer<SdlJoystick> joystick,
Uint16 leftRumble,
Uint16 rightRumble,
Uint32 durationMs,
),
int Function(
Pointer<SdlJoystick> joystick,
int leftRumble,
int rightRumble,
int durationMs,
)
>('SDL_RumbleJoystickTriggers');
return sdlRumbleJoystickTriggersLookupFunction(
joystick,
leftRumble,
rightRumble,
durationMs,
) ==
1;
}