VkPhysicalDeviceSurfaceInfo2KHR
The VkPhysicalDeviceSurfaceInfo2KHR
structure is defined as:
typedef struct VkPhysicalDeviceSurfaceInfo2KHR {
VkStructureType sType;
const void* pNext;
VkSurfaceKHR surface;
} VkPhysicalDeviceSurfaceInfo2KHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.surface
is 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 struct in the pNext
chain must be unique