Toggle VSync for the window surface.
Defined in <SDL3/SDL_video.h>
int vsync);
SDL_bool SDL_SetWindowSurfaceVSync(SDL_Window *window,
#define SDL_WINDOW_SURFACE_VSYNC_DISABLED 0
#define SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE (-1)
SDL_Window * | window | the window. |
int | vsync | the vertical refresh sync interval. |
(SDL_bool) Returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() for more information.
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.
This function is available since SDL 3.0.0.