Function Prototype

vkUpdateIndirectExecutionSetShaderEXT

Update the contents of an indirect execution set

Shader object elements in an Indirect Execution Set can be updated by calling:

void vkUpdateIndirectExecutionSetShaderEXT(
    VkDevice device,
    VkIndirectExecutionSetEXT indirectExecutionSet,
    uint32_t executionSetWriteCount,
    const VkWriteIndirectExecutionSetShaderEXT* pExecutionSetWrites);
  • device is the logical device that owns the indirect execution set.
  • indirectExecutionSet is the indirect execution set being updated.
  • executionSetWriteCount is the number of elements in the pExecutionSetWrites array.
  • pExecutionSetWrites is a pointer to an array of VkWriteIndirectExecutionSetShaderEXT structures describing the elements to update.

Valid Usage

VUID-vkUpdateIndirectExecutionSetShaderEXT-indirectExecutionSet-11041

indirectExecutionSet must have been created with type VK_INDIRECT_EXECUTION_SET_INFO_TYPE_SHADER_OBJECTS_EXT

VUID-vkUpdateIndirectExecutionSetShaderEXT-pExecutionSetWrites-11043

Each element in the pExecutionSetWrites array must have a unique VkWriteIndirectExecutionSetShaderEXT::index

VUID-vkUpdateIndirectExecutionSetShaderEXT-None-11044

Each member of the Indirect Execution Set referenced by the update command must not be in use by the device

VUID-vkUpdateIndirectExecutionSetShaderEXT-pExecutionSetWrites-11140

The descriptor layout of each shader in pExecutionSetWrites must be compatible with the initial layout info used to create the Indirect Execution Set

VUID-vkUpdateIndirectExecutionSetShaderEXT-None-11148

Each fragment shader element in the Indirect Execution Set must have identically defined fragment outputs interface to the initial shader state used to create the Indirect Execution Set

VUID-vkUpdateIndirectExecutionSetShaderEXT-FragDepth-11054

Each fragment shader element in the Indirect Execution Set must match the initial shader state used to create the Indirect Execution Set in its use of FragDepth

VUID-vkUpdateIndirectExecutionSetShaderEXT-SampleMask-11050

Each fragment shader element in the Indirect Execution Set must match the initial shader state used to create the Indirect Execution Set in its use of SampleMask

VUID-vkUpdateIndirectExecutionSetShaderEXT-StencilExportEXT-11003

Each fragment shader element in the Indirect Execution Set must match the initial shader state used to create the Indirect Execution Set in its use of StencilExportEXT

Valid Usage (Implicit)

VUID-vkUpdateIndirectExecutionSetShaderEXT-pExecutionSetWrites-parameter

pExecutionSetWrites must be a valid pointer to an array of executionSetWriteCount valid VkWriteIndirectExecutionSetShaderEXT structures

VUID-vkUpdateIndirectExecutionSetShaderEXT-indirectExecutionSet-parent

indirectExecutionSet must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to indirectExecutionSet must be externally synchronized ::