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.
VK_VALVE_mutable_descriptor_typeVK_KHR_maintenance3VK_EXT_mutable_descriptor_type extension| Modifier and Type | Field and Description |
|---|---|
| public static final int | VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE
Extends |
| public static final int | VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE
Extends |
| public static final int | VK_DESCRIPTOR_TYPE_MUTABLE_VALVE
Extends |
| public static final int | VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE
Extends |
| public static final int | VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE
Extends |
| public static final String | VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME
The extension name. |
| public static final int | VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION
The extension specification version. |
| Access | Constructor and Description |
|---|---|
| private |
| VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE | back to summary |
|---|---|
| public static final int VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE Extends | |
| VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE | back to summary |
|---|---|
| public static final int VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE Extends | |
| VK_DESCRIPTOR_TYPE_MUTABLE_VALVE | back to summary |
|---|---|
| public static final int VK_DESCRIPTOR_TYPE_MUTABLE_VALVE Extends | |
| VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE | back to summary |
|---|---|
| public static final int VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE Extends Enum values: | |
| VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE | back to summary |
|---|---|
| public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE Extends Enum values: | |
| VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME | back to summary |
|---|---|
| public static final String VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME The extension name. | |
| VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION | back to summary |
|---|---|
| public static final int VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION The extension specification version. | |
| VALVEMutableDescriptorType | back to summary |
|---|---|
| private VALVEMutableDescriptorType() | |