Function SDL_SetGPUAllowedFramesInFlight

pub unsafe extern "C" fn SDL_SetGPUAllowedFramesInFlight(
    device: *mut SDL_GPUDevice,
    allowed_frames_in_flight: u32,
) -> bool
Available on crate feature dep_sdl3 only.
Expand description

Configures the maximum allowed number of frames in flight.

The default value when the device is created is 2. This means that after you have submitted 2 frames for presentation, if the GPU has not finished working on the first frame, SDL_AcquireGPUSwapchainTexture() will fill the swapchain texture pointer with NULL, and SDL_WaitAndAcquireGPUSwapchainTexture() will block.

Higher values increase throughput at the expense of visual latency. Lower values decrease visual latency at the expense of throughput.

Note that calling this function will stall and flush the command queue to prevent synchronization issues.

The minimum value of allowed frames in flight is 1, and the maximum is 3.

§Parameters

  • device: a GPU context.
  • allowed_frames_in_flight: the maximum number of frames that can be pending on the GPU.

§Return value

Returns true if successful, false on error; call [SDL_GetError()] for more information.

§Availability

This function is available since SDL 3.2.0.