C Specification
To query the supported swapchain format tuples for a surface, call:
// Provided by VK_KHR_get_surface_capabilities2
VkResult vkGetPhysicalDeviceSurfaceFormats2KHR(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
uint32_t* pSurfaceFormatCount,
VkSurfaceFormat2KHR* pSurfaceFormats);
Parameters
-
physicalDevice
is the physical device that will be associated with the swapchain to be created, as described for vkCreateSwapchainKHR. -
pSurfaceInfo
is a pointer to a VkPhysicalDeviceSurfaceInfo2KHR structure describing the surface and other fixed parameters that would be consumed by vkCreateSwapchainKHR. -
pSurfaceFormatCount
is a pointer to an integer related to the number of format tuples available or queried, as described below. -
pSurfaceFormats
is eitherNULL
or a pointer to an array of VkSurfaceFormat2KHR structures.
Description
vkGetPhysicalDeviceSurfaceFormats2KHR behaves similarly to
vkGetPhysicalDeviceSurfaceFormatsKHR, with the ability to be extended
via pNext
chains.
If pSurfaceFormats
is NULL
, then the number of format tuples
supported for the given surface
is returned in
pSurfaceFormatCount
.
Otherwise, pSurfaceFormatCount
must point to a variable set by the
user to the number of elements in the pSurfaceFormats
array, and on
return the variable is overwritten with the number of structures actually
written to pSurfaceFormats
.
If the value of pSurfaceFormatCount
is less than the number of format
tuples supported, at most pSurfaceFormatCount
structures will be
written, and VK_INCOMPLETE
will be returned instead of
VK_SUCCESS
, to indicate that not all the available values were
returned.
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.