sdlRumbleJoystick function joystick
bool
sdlRumbleJoystick(
- Pointer<
SdlJoystick> joystick, - int lowFrequencyRumble,
- int highFrequencyRumble,
- int durationMs,
Start a rumble effect.
Each call to this function cancels any previous rumble effect, and calling it with 0 intensity stops any rumbling.
This function requires you to process SDL events or call SDL_UpdateJoysticks() to update rumble state.
\param joystick the joystick to vibrate. \param low_frequency_rumble the intensity of the low frequency (left) rumble motor, from 0 to 0xFFFF. \param high_frequency_rumble the intensity of the high frequency (right) rumble motor, from 0 to 0xFFFF. \param duration_ms the duration of the rumble effect, in milliseconds. \returns true, or false if rumble isn't supported on this joystick.
\threadsafety It is safe to call this function from any thread.
\since This function is available since SDL 3.2.0.
extern SDL_DECLSPEC bool SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms)
Implementation
bool sdlRumbleJoystick(
Pointer<SdlJoystick> joystick,
int lowFrequencyRumble,
int highFrequencyRumble,
int durationMs,
) {
final sdlRumbleJoystickLookupFunction = _libSdl
.lookupFunction<
Uint8 Function(
Pointer<SdlJoystick> joystick,
Uint16 lowFrequencyRumble,
Uint16 highFrequencyRumble,
Uint32 durationMs,
),
int Function(
Pointer<SdlJoystick> joystick,
int lowFrequencyRumble,
int highFrequencyRumble,
int durationMs,
)
>('SDL_RumbleJoystick');
return sdlRumbleJoystickLookupFunction(
joystick,
lowFrequencyRumble,
highFrequencyRumble,
durationMs,
) ==
1;
}