vkBindImageMemory2
To attach memory to image objects for one or more images at a time, call:
VkResult vkBindImageMemory2KHR(
VkDevice device,
uint32_t bindInfoCount,
const VkBindImageMemoryInfo* pBindInfos);
device
is the logical device that owns the images and memory.bindInfoCount
is the number of elements inpBindInfos
.pBindInfos
is a pointer to an array of VkBindImageMemoryInfo structures, describing images and memory to bind.
On some implementations, it may be more efficient to batch memory bindings into a single command.
If the maintenance6
feature is enabled,
this command must attempt to perform all of the memory binding operations
described by pBindInfos
, and must not early exit on the first
failure.
If any of the memory binding operations described by pBindInfos
fail,
the VkResult returned by this command must be the return value of any
one of the memory binding operations which did not return VK_SUCCESS
.
If the vkBindImageMemory2
command failed,
VkBindMemoryStatusKHR structures were not included in the pNext
chains of each element of pBindInfos
,
and bindInfoCount
was greater than one, then the images referenced by
pBindInfos
will be in an indeterminate state, and must not be used.
Applications should destroy these images.
Valid Usage
VUID-vkBindImageMemory2-pBindInfos-02858
If any VkBindImageMemoryInfo::image
was created with
VK_IMAGE_CREATE_DISJOINT_BIT
then all planes of
VkBindImageMemoryInfo::image
must be bound individually in
separate pBindInfos
VUID-vkBindImageMemory2-pBindInfos-04006
pBindInfos
must not refer to the same image subresource more than
once
Valid Usage (Implicit)
VUID-vkBindImageMemory2-device-parameter
device
must be a valid VkDevice handle
VUID-vkBindImageMemory2-pBindInfos-parameter
pBindInfos
must be a valid pointer to an array of bindInfoCount
valid VkBindImageMemoryInfo structures
VUID-vkBindImageMemory2-bindInfoCount-arraylength
bindInfoCount
must be greater than 0