sdlSetRenderVSync function

bool sdlSetRenderVSync(
  1. Pointer<SdlRenderer> renderer,
  2. int vsync
)

Toggle VSync of the given renderer.

When a renderer is created, vsync defaults to SDL_RENDERER_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_RENDERER_VSYNC_ADAPTIVE for late swap tearing (adaptive vsync), or SDL_RENDERER_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.

\param renderer the renderer to toggle. \param vsync the vertical refresh sync interval. \returns true on success or false on failure; call SDL_GetError() for more information.

\threadsafety This function should only be called on the main thread.

\since This function is available since SDL 3.1.3.

\sa SDL_GetRenderVSync

extern SDL_DECLSPEC bool SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync)

Implementation

bool sdlSetRenderVSync(Pointer<SdlRenderer> renderer, int vsync) {
  final sdlSetRenderVSyncLookupFunction = libSdl3.lookupFunction<
      Uint8 Function(Pointer<SdlRenderer> renderer, Int32 vsync),
      int Function(
          Pointer<SdlRenderer> renderer, int vsync)>('SDL_SetRenderVSync');
  return sdlSetRenderVSyncLookupFunction(renderer, vsync) == 1;
}