Structures

VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT

Structure describing whether the mutable descriptor type is supported

The VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT structure is defined as:

typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT {
    VkStructureType sType;
    void* pNext;
    VkBool32 mutableDescriptorType;
} VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT;

or the equivalent

typedef VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;

This structure describes the following feature:

  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • mutableDescriptorType indicates that the implementation must support using the VkDescriptorType of VK_DESCRIPTOR_TYPE_MUTABLE_EXT with at least the following descriptor types, where any combination of the types must be supported:
    • VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE
    • VK_DESCRIPTOR_TYPE_STORAGE_IMAGE
    • VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER
    • VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER
    • VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER
    • VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
  • Additionally, mutableDescriptorType indicates that:
    • Non-uniform descriptor indexing must be supported if all descriptor types in a VkMutableDescriptorTypeListEXT for VK_DESCRIPTOR_TYPE_MUTABLE_EXT have the corresponding non-uniform indexing features enabled in VkPhysicalDeviceDescriptorIndexingFeatures.
    • VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT with descriptorType of VK_DESCRIPTOR_TYPE_MUTABLE_EXT relaxes the list of required descriptor types to the descriptor types which have the corresponding update-after-bind feature enabled in VkPhysicalDeviceDescriptorIndexingFeatures.
    • Dynamically uniform descriptor indexing must be supported if all descriptor types in a VkMutableDescriptorTypeListEXT for VK_DESCRIPTOR_TYPE_MUTABLE_EXT have the corresponding dynamic indexing features enabled.
    • VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT must be supported.
    • VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT must be supported.

If the VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT structure is included in the pNext chain of the VkPhysicalDeviceFeatures2 structure passed to vkGetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT can also be used in the pNext chain of VkDeviceCreateInfo to selectively enable these features.

Valid Usage (Implicit)

VUID-VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT-sType-sType

sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT