C Specification

The list of potential descriptor types a given mutable descriptor can mutate to is passed in a VkMutableDescriptorTypeListEXT structure.

The VkMutableDescriptorTypeListEXT structure is defined as:

// Provided by VK_EXT_mutable_descriptor_type
typedef struct VkMutableDescriptorTypeListEXT {
    uint32_t                   descriptorTypeCount;
    const VkDescriptorType*    pDescriptorTypes;
} VkMutableDescriptorTypeListEXT;

or the equivalent

// Provided by VK_VALVE_mutable_descriptor_type
typedef VkMutableDescriptorTypeListEXT VkMutableDescriptorTypeListVALVE;


  • descriptorTypeCount is the number of elements in pDescriptorTypes.

  • pDescriptorTypes is NULL or a pointer to an array of descriptorTypeCount VkDescriptorType values defining which descriptor types a given binding may mutate to.


Valid Usage
  • VUID-VkMutableDescriptorTypeListEXT-descriptorTypeCount-04597
    descriptorTypeCount must not be 0 if the corresponding binding is of VK_DESCRIPTOR_TYPE_MUTABLE_EXT

  • VUID-VkMutableDescriptorTypeListEXT-pDescriptorTypes-04598
    pDescriptorTypes must be a valid pointer to an array of descriptorTypeCount valid, unique VkDescriptorType values if the given binding is of VK_DESCRIPTOR_TYPE_MUTABLE_EXT type

  • VUID-VkMutableDescriptorTypeListEXT-descriptorTypeCount-04599
    descriptorTypeCount must be 0 if the corresponding binding is not of VK_DESCRIPTOR_TYPE_MUTABLE_EXT

  • VUID-VkMutableDescriptorTypeListEXT-pDescriptorTypes-04600
    pDescriptorTypes must not contain VK_DESCRIPTOR_TYPE_MUTABLE_EXT

  • VUID-VkMutableDescriptorTypeListEXT-pDescriptorTypes-04601
    pDescriptorTypes must not contain VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC

  • VUID-VkMutableDescriptorTypeListEXT-pDescriptorTypes-04602
    pDescriptorTypes must not contain VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC

  • VUID-VkMutableDescriptorTypeListEXT-pDescriptorTypes-04603
    pDescriptorTypes must not contain VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK

Valid Usage (Implicit)
  • VUID-VkMutableDescriptorTypeListEXT-pDescriptorTypes-parameter
    If descriptorTypeCount is not 0, pDescriptorTypes must be a valid pointer to an array of descriptorTypeCount valid VkDescriptorType values

See Also

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0