VkPhysicalDeviceSurfaceInfo2KHR
The VkPhysicalDeviceSurfaceInfo2KHR structure is defined as:
typedef struct VkPhysicalDeviceSurfaceInfo2KHR {
VkStructureType sType;
const void* pNext;
VkSurfaceKHR surface;
} VkPhysicalDeviceSurfaceInfo2KHR;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.surfaceis the surface that will be associated with the swapchain.
The members of VkPhysicalDeviceSurfaceInfo2KHR correspond to the
arguments to vkGetPhysicalDeviceSurfaceCapabilitiesKHR, with
sType and pNext added for extensibility.
Additional capabilities of a surface may be available to swapchains created
with different full-screen exclusive settings - particularly if exclusive
full-screen access is application controlled.
These additional capabilities can be queried by adding a
VkSurfaceFullScreenExclusiveInfoEXT structure to the pNext chain
of this structure when used to query surface properties.
Additionally, for Win32 surfaces with application controlled exclusive
full-screen access, chaining a
VkSurfaceFullScreenExclusiveWin32InfoEXT structure may also report
additional surface capabilities.
These additional capabilities only apply to swapchains created with the same
parameters included in the pNext chain of
VkSwapchainCreateInfoKHR.
Valid Usage
VUID-VkPhysicalDeviceSurfaceInfo2KHR-pNext-02672
If the pNext chain includes a
VkSurfaceFullScreenExclusiveInfoEXT structure with its
fullScreenExclusive member set to
VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT, and
surface was created using vkCreateWin32SurfaceKHR, a
VkSurfaceFullScreenExclusiveWin32InfoEXT structure must be
included in the pNext chain
VUID-VkPhysicalDeviceSurfaceInfo2KHR-surface-07919
If surface is not VK_NULL_HANDLE,
and the VK_GOOGLE_surfaceless_query extension is not enabled,
surface must be a valid VkSurfaceKHR handle
Valid Usage (Implicit)
VUID-VkPhysicalDeviceSurfaceInfo2KHR-sType-sType
sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR
VUID-VkPhysicalDeviceSurfaceInfo2KHR-pNext-pNext
Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkSurfaceFullScreenExclusiveInfoEXT, VkSurfaceFullScreenExclusiveWin32InfoEXT, or VkSurfacePresentModeEXT
VUID-VkPhysicalDeviceSurfaceInfo2KHR-sType-unique
The sType value of each structure in the pNext chain must be unique