vkCmdDecompressMemoryNV
To decompress data between one or more memory regions call:
void vkCmdDecompressMemoryNV(
VkCommandBuffer commandBuffer,
uint32_t decompressRegionCount,
const VkDecompressMemoryRegionNV* pDecompressMemoryRegions);
commandBuffer
is the command buffer into which the command will be recorded.decompressRegionCount
is the number of memory regions to decompress.pDecompressMemoryRegions
is a pointer to an array ofdecompressRegionCount
VkDecompressMemoryRegionNV structures specifying decompression parameters.
Each region specified in pDecompressMemoryRegions
is decompressed from
the source to destination region based on the specified decompression
method.
Valid Usage
VUID-vkCmdDecompressMemoryNV-None-07684
The memoryDecompression
feature
must be enabled
Valid Usage (Implicit)
VUID-vkCmdDecompressMemoryNV-commandBuffer-parameter
commandBuffer
must be a valid VkCommandBuffer handle
VUID-vkCmdDecompressMemoryNV-pDecompressMemoryRegions-parameter
pDecompressMemoryRegions
must be a valid pointer to an array of decompressRegionCount
valid VkDecompressMemoryRegionNV structures
VUID-vkCmdDecompressMemoryNV-commandBuffer-recording
commandBuffer
must be in the recording state
VUID-vkCmdDecompressMemoryNV-commandBuffer-cmdpool
The VkCommandPool
that commandBuffer
was allocated from must support graphics, or compute operations
VUID-vkCmdDecompressMemoryNV-renderpass
This command must only be called outside of a render pass instance
VUID-vkCmdDecompressMemoryNV-videocoding
This command must only be called outside of a video coding scope
VUID-vkCmdDecompressMemoryNV-decompressRegionCount-arraylength
decompressRegionCount
must be greater than 0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized - Host access to the
VkCommandPool
thatcommandBuffer
was allocated from must be externally synchronized ::