Function SDL_GetRelativeMouseState

pub unsafe extern "C" fn SDL_GetRelativeMouseState(
    x: *mut f32,
    y: *mut f32,
) -> u32 
Available on crate feature dep_sdl3 only.
Expand description

Query SDL’s cache for the synchronous mouse button state and accumulated mouse delta since last call.

This function returns the cached synchronous state as SDL understands it from the last pump of the event queue.

To query the platform for immediate asynchronous state, use SDL_GetGlobalMouseState.

Passing non-NULL pointers to x or y will write the destination with respective x or y deltas accumulated since the last call to this function (or since event initialization).

This function is useful for reducing overhead by processing relative mouse inputs in one go per-frame instead of individually per-event, at the expense of losing the order between events within the frame (e.g. quickly pressing and releasing a button within the same frame).

§Parameters

  • x: a pointer to receive the x mouse delta accumulated since last call, can be NULL if unused.
  • y: a pointer to receive the y mouse delta accumulated since last call, can be NULL if unused.

§Return value

Returns a 32-bit bitmask of the button state that can be bitwise-compared against the SDL_BUTTON_MASK(X) macro.

§Thread safety

This function should only be called on the main thread.

§Availability

This function is available since SDL 3.2.0.

§See also