Structures
VkDisplayPropertiesKHR
Structure describing an available display device
The VkDisplayPropertiesKHR
structure is defined as:
typedef struct VkDisplayPropertiesKHR {
VkDisplayKHR display;
const char* displayName;
VkExtent2D physicalDimensions;
VkExtent2D physicalResolution;
VkSurfaceTransformFlagsKHR supportedTransforms;
VkBool32 planeReorderPossible;
VkBool32 persistentContent;
} VkDisplayPropertiesKHR;
display
is a handle that is used to refer to the display described here. This handle will be valid for the lifetime of the Vulkan instance.displayName
isNULL
or a pointer to a null-terminated UTF-8 string containing the name of the display. Generally, this will be the name provided by the display’s EDID. IfNULL
, no suitable name is available. If notNULL
, the string pointed to must remain accessible and unmodified as long asdisplay
is valid.physicalDimensions
describes the physical width and height of the visible portion of the display, in millimeters.physicalResolution
describes the physical, native, or preferred resolution of the display.
For devices which have no natural value to return here, implementations should return the maximum resolution supported.
supportedTransforms
is a bitmask of VkSurfaceTransformFlagBitsKHR describing which transforms are supported by this display.planeReorderPossible
tells whether the planes on this display can have their z order changed. If this isVK_TRUE
, the application can re-arrange the planes on this display in any order relative to each other.persistentContent
tells whether the display supports self-refresh/internal buffering. If this is true, the application can submit persistent present operations on swapchains created against this display.
Persistent presents may have higher latency, and may use less power when the screen content is updated infrequently, or when only a portion of the screen needs to be updated in most frames.