Structures

VkDescriptorMappingSourceHeapDataEXT

Structure specifying mapping a uniform buffer to heap data

The VkDescriptorMappingSourceHeapDataEXT structure is defined as:

typedef struct VkDescriptorMappingSourceHeapDataEXT {
    uint32_t heapOffset;
    uint32_t pushOffset;
} VkDescriptorMappingSourceHeapDataEXT;
  • heapOffset is a constant byte offset added to the heap address for the mapped buffer.
  • pushOffset is an index into push data where an additional offset into the heap for the mapped resource will be retrieved.

Uniform buffers using this mapping will be backed directly by data in the heap. Accessing data in the uniform buffer at an offset of shaderOffset in the shader will access heap data at an offset equal to

  • offset = shaderOffset + heapOffset + ((uint32_t*)pPushData)[pushOffset/4]

where pPushData is the total set of push data specified by vkCmdPushDataEXT. Shader reads through the heap mapped in this way are performed according to the mapped resource.

Valid Usage

VUID-VkDescriptorMappingSourceHeapDataEXT-pushOffset-11265

pushOffset must be less than or equal to maxPushDataSize - 4