VkPresentRegionsKHR
When the VK_KHR_incremental_present extension is enabled,
additional fields can be specified that allow an application to specify
that only certain rectangular regions of the presentable images of a
swapchain are changed.
This is an optimization hint that a presentation engine may use to only
update the region of a surface that is actually changing.
The application still must ensure that all pixels of a presented image
contain the desired values, in case the presentation engine ignores this
hint.
An application can provide this hint by adding a VkPresentRegionsKHR
structure to the pNext
chain of the VkPresentInfoKHR
structure.
The VkPresentRegionsKHR
structure is defined as:
typedef struct VkPresentRegionsKHR {
VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkPresentRegionKHR* pRegions;
} VkPresentRegionsKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.swapchainCount
is the number of swapchains being presented to by this command.pRegions
isNULL
or a pointer to an array ofVkPresentRegionKHR
elements withswapchainCount
entries. If notNULL
, each element ofpRegions
contains the region that has changed since the last present to the swapchain in the corresponding entry in theVkPresentInfoKHR
::pSwapchains
array.
Valid Usage
VUID-VkPresentRegionsKHR-swapchainCount-01260
swapchainCount
must be the same value as
VkPresentInfoKHR
::swapchainCount
, where
VkPresentInfoKHR
is included in the pNext
chain of this
VkPresentRegionsKHR
structure
Valid Usage (Implicit)
VUID-VkPresentRegionsKHR-sType-sType
sType
must be VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR
VUID-VkPresentRegionsKHR-pRegions-parameter
If pRegions
is not NULL
, pRegions
must be a valid pointer to an array of swapchainCount
valid VkPresentRegionKHR structures
VUID-VkPresentRegionsKHR-swapchainCount-arraylength
swapchainCount
must be greater than 0