vkCmdDecompressMemoryNV
To decompress data between one or more memory regions call:
void vkCmdDecompressMemoryNV(
VkCommandBuffer commandBuffer,
uint32_t decompressRegionCount,
const VkDecompressMemoryRegionNV* pDecompressMemoryRegions);
commandBufferis the command buffer into which the command will be recorded.decompressRegionCountis the number of memory regions to decompress.pDecompressMemoryRegionsis a pointer to an array ofdecompressRegionCountVkDecompressMemoryRegionNV 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
commandBuffermust be externally synchronized - Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized ::