Create a Vulkan rendering surface for a window.
SDL_bool SDL_Vulkan_CreateSurface(SDL_Window *window,
VkInstance instance,const struct VkAllocationCallbacks *allocator,
VkSurfaceKHR* surface);
window | The window to which to attach the Vulkan surface |
instance | The Vulkan instance handle |
allocator | A VkAllocationCallbacks struct, which lets the app set the allocator that creates the surface. Can be NULL. |
surface | A pointer to a VkSurfaceKHR handle to output the newly created surface |
Returns SDL_TRUE on success, SDL_FALSE on error.
The window
must have been created with the SDL_WINDOW_VULKAN
flag and instance
must have been created with extensions returned by SDL_Vulkan_GetInstanceExtensions() enabled.
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.
This function is available since SDL 3.0.0.
VkSurfaceKHR surface;
if (!SDL_Vulkan_CreateSurface(window, instance, &surface)) handle_error();