SDL_SetWindowSurfaceVSync(3)

NAME
SDL_SetWindowSurfaceVSync - Toggle VSync for the window surface.

SYNOPSIS
#include <SDL3/SDL_video.h>

bool SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync);

#define SDL_WINDOW_SURFACE_VSYNC_DISABLED 0
#define SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE (-1)

DESCRIPTION
When a window surface is created, vsync defaults to SDL_WINDOW_SURFACE_VSYNC_DISABLED.

The vsync parameter can be 1 to synchronize present with every vertical refresh, 2 to synchronize present with every second vertical refresh, etc., SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE for late swap tearing (adaptive vsync), or SDL_WINDOW_SURFACE_VSYNC_DISABLED to disable. Not every value is supported by every driver, so you should check the return value to see whether the requested setting is supported.

FUNCTION PARAMETERS

window
    the window.

vsync
    the vertical refresh sync interval.

RETURN VALUE
Returns true on success or false on failure; call SDL_GetError() for more information.

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_GetWindowSurfaceVSync(3)