sdlVulkanDestroySurface function

void sdlVulkanDestroySurface(
  1. Pointer<NativeType> instance,
  2. Pointer<NativeType> surface,
  3. Pointer<Void> allocator
)

Destroy the Vulkan rendering surface of a window.

This should be called before SDL_DestroyWindow, if SDL_Vulkan_CreateSurface was called after SDL_CreateWindow.

The instance must have been created with extensions returned by SDL_Vulkan_GetInstanceExtensions() enabled and surface must have been created successfully by an SDL_Vulkan_CreateSurface() call.

If allocator is NULL, Vulkan will use the system default allocator. This argument is passed directly to Vulkan and isn't used by SDL itself.

\param instance the Vulkan instance handle. \param surface vkSurfaceKHR handle to destroy. \param allocator a VkAllocationCallbacks struct, which lets the app set the allocator that destroys the surface. Can be NULL.

\since This function is available since SDL 3.1.3.

\sa SDL_Vulkan_GetInstanceExtensions \sa SDL_Vulkan_CreateSurface

extern SDL_DECLSPEC void SDLCALL SDL_Vulkan_DestroySurface(VkInstance instance, VkSurfaceKHR surface, const struct VkAllocationCallbacks *allocator)

Implementation

void sdlVulkanDestroySurface(Pointer<NativeType> instance,
    Pointer<NativeType> surface, Pointer<Void> allocator) {
  final sdlVulkanDestroySurfaceLookupFunction = libSdl3.lookupFunction<
      Void Function(Pointer<NativeType> instance, Pointer<NativeType> surface,
          Pointer<Void> allocator),
      void Function(Pointer<NativeType> instance, Pointer<NativeType> surface,
          Pointer<Void> allocator)>('SDL_Vulkan_DestroySurface');
  return sdlVulkanDestroySurfaceLookupFunction(instance, surface, allocator);
}