SDL_GetRelativeMouseState(3)

NAME
SDL_GetRelativeMouseState - Query SDL's cache for the synchronous mouse button state and accumulated mouse delta since last call.

SYNOPSIS
#include <SDL3/SDL_mouse.h>

SDL_MouseButtonFlags SDL_GetRelativeMouseState(float *x, float *y);

DESCRIPTION
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).

FUNCTION 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
SDL_GetMouseState(3), SDL_GetGlobalMouseState(3)