Top Description Fields Constructors Methods
org.lwjgl.vulkan

public final Class EXTMutableDescriptorType

extends Object
Class Inheritance

This extension allows applications to reduce descriptor memory footprint by allowing a descriptor to be able to mutate to a given list of descriptor types depending on which descriptor types are written into, or copied into a descriptor set.

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_EXT_mutable_descriptor_type
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
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

Modifier and TypeField and Description
public static final int
VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT

Extends VkDescriptorPoolCreateFlagBits.

public static final int
VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT

Extends VkDescriptorSetLayoutCreateFlagBits.

public static final int
VK_DESCRIPTOR_TYPE_MUTABLE_EXT

Extends VkDescriptorType.

public static final String
public static final int
VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION

The extension specification version.

public static final int
public static final int

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXTback to summary
public static final int VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT

Extends VkDescriptorPoolCreateFlagBits.

VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXTback to summary
public static final int VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT

Extends VkDescriptorSetLayoutCreateFlagBits.

VK_DESCRIPTOR_TYPE_MUTABLE_EXTback to summary
public static final int VK_DESCRIPTOR_TYPE_MUTABLE_EXT

Extends VkDescriptorType.

VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAMEback to summary
public static final String VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME

The extension name.

VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSIONback to summary
public static final int VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION

The extension specification version.

VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXTback to summary
public static final int VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT

Extends VkStructureType.

Enum values:
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXTback to summary
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT

Extends VkStructureType.

Enum values:

Constructor Detail

EXTMutableDescriptorTypeback to summary
private EXTMutableDescriptorType()