Class EXTMutableDescriptorType
The main use case this extension intends to address is descriptor indexing with DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT where the descriptor types are completely generic, as this means applications can allocate one large descriptor set, rather than having one large descriptor set per descriptor type, which significantly bloats descriptor memory usage and causes performance issues.
This extension also adds a mechanism to declare that a descriptor pool, and therefore the descriptor sets that are allocated from it, reside only in host memory; as such these descriptors can only be updated/copied, but not bound.
These features together allow much more efficient emulation of the raw D3D12 binding model. This extension is primarily intended to be useful for API layering efforts.
- Name String
VK_EXT_mutable_descriptor_type- Extension Type
- Device extension
- Registered Extension Number
- 495
- Revision
- 1
- Extension and Version Dependencies
VK_KHR_maintenance3- Special Use
- Contact
- Joshua Ashton Joshua-Ashton
- Hans-Kristian Arntzen HansKristian-Work
- Extension Proposal
- VK_EXT_mutable_descriptor_type
Other Extension Metadata
- Last Modified Date
- 2022-08-22
- IP Status
- No known IP claims.
- Contributors
- Joshua Ashton, Valve
- Hans-Kristian Arntzen, Valve
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intExtendsVkDescriptorPoolCreateFlagBits.static final intExtendsVkDescriptorSetLayoutCreateFlagBits.static final intExtendsVkDescriptorType.static final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType.static final intExtendsVkStructureType. -
Method Summary
-
Field Details
-
VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION
public static final int VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXTExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT
public static final int VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXTExtendsVkStructureType.Enum values:
- See Also:
-
VK_DESCRIPTOR_TYPE_MUTABLE_EXT
public static final int VK_DESCRIPTOR_TYPE_MUTABLE_EXTExtendsVkDescriptorType.- See Also:
-
VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT
public static final int VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXTExtendsVkDescriptorPoolCreateFlagBits.- See Also:
-
VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT
public static final int VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXTExtendsVkDescriptorSetLayoutCreateFlagBits.- See Also:
-