VkDisplaySurfaceCreateInfoKHR
The VkDisplaySurfaceCreateInfoKHR
structure is defined as:
typedef struct VkDisplaySurfaceCreateInfoKHR {
VkStructureType sType;
const void* pNext;
VkDisplaySurfaceCreateFlagsKHR flags;
VkDisplayModeKHR displayMode;
uint32_t planeIndex;
uint32_t planeStackIndex;
VkSurfaceTransformFlagBitsKHR transform;
float globalAlpha;
VkDisplayPlaneAlphaFlagBitsKHR alphaMode;
VkExtent2D imageExtent;
} VkDisplaySurfaceCreateInfoKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.flags
is reserved for future use, and must be zero.displayMode
is a VkDisplayModeKHR handle specifying the mode to use when displaying this surface.planeIndex
is the plane on which this surface appears.planeStackIndex
is the z-order of the plane.transform
is a VkSurfaceTransformFlagBitsKHR value specifying the transformation to apply to images as part of the scanout operation.globalAlpha
is the global alpha value. This value is ignored ifalphaMode
is notVK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR
.alphaMode
is a VkDisplayPlaneAlphaFlagBitsKHR value specifying the type of alpha blending to use.imageExtent
is the size of the presentable images to use with the surface.
Creating a display surface must not modify the state of the displays, planes, or other resources it names. For example, it must not apply the specified mode to be set on the associated display. Application of display configuration occurs as a side effect of presenting to a display surface.
Valid Usage
VUID-VkDisplaySurfaceCreateInfoKHR-planeIndex-01252
planeIndex
must be less than the number of display planes
supported by the device as determined by calling
vkGetPhysicalDeviceDisplayPlanePropertiesKHR
VUID-VkDisplaySurfaceCreateInfoKHR-planeReorderPossible-01253
If the planeReorderPossible
member of the
VkDisplayPropertiesKHR
structure returned by
vkGetPhysicalDeviceDisplayPropertiesKHR
for the display
corresponding to displayMode
is VK_TRUE
then
planeStackIndex
must be less than the number of display planes
supported by the device as determined by calling
vkGetPhysicalDeviceDisplayPlanePropertiesKHR
; otherwise
planeStackIndex
must equal the currentStackIndex
member of
VkDisplayPlanePropertiesKHR
returned by
vkGetPhysicalDeviceDisplayPlanePropertiesKHR
for the display plane
corresponding to displayMode
VUID-VkDisplaySurfaceCreateInfoKHR-alphaMode-01254
If alphaMode
is VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR
then
globalAlpha
must be between 0
and 1
, inclusive
VUID-VkDisplaySurfaceCreateInfoKHR-alphaMode-01255
alphaMode
must be one of the bits present in the
supportedAlpha
member of VkDisplayPlaneCapabilitiesKHR
for
the display plane corresponding to displayMode
VUID-VkDisplaySurfaceCreateInfoKHR-transform-06740
transform
must be one of the bits present in the
supportedTransforms
member of VkDisplayPropertiesKHR
for the
display corresponding to displayMode
VUID-VkDisplaySurfaceCreateInfoKHR-width-01256
The width
and height
members of imageExtent
must be
less than or equal to
VkPhysicalDeviceLimits::maxImageDimension2D
Valid Usage (Implicit)
VUID-VkDisplaySurfaceCreateInfoKHR-sType-sType
sType
must be VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR
VUID-VkDisplaySurfaceCreateInfoKHR-pNext-pNext
pNext
must be NULL
VUID-VkDisplaySurfaceCreateInfoKHR-flags-zerobitmask
flags
must be 0
VUID-VkDisplaySurfaceCreateInfoKHR-displayMode-parameter
displayMode
must be a valid VkDisplayModeKHR handle
VUID-VkDisplaySurfaceCreateInfoKHR-transform-parameter
transform
must be a valid VkSurfaceTransformFlagBitsKHR value
VUID-VkDisplaySurfaceCreateInfoKHR-alphaMode-parameter
alphaMode
must be a valid VkDisplayPlaneAlphaFlagBitsKHR value