Appendix D: Core Revisions (Informative)
New minor versions of the Vulkan API are defined periodically by the Khronos Vulkan Working Group. These consist of some amount of additional functionality added to the core API, potentially including both new functionality and functionality promoted from extensions.
It is possible to build the specification for earlier versions, but to aid readability of the latest versions, this appendix gives an overview of the changes as compared to earlier versions.
Version 1.2
Vulkan Version 1.2 promoted a number of key extensions into the core API:
All differences in behavior between these extensions and the corresponding Vulkan 1.2 functionality are summarized below.
Differences relative to VK_KHR_8bit_storage
If the VK_KHR_8bit_storage
extension is not supported, support for the
SPIR-V StorageBuffer8BitAccess
capability in shader modules is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::storageBuffer8BitAccess
when
queried via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_draw_indirect_count
If the VK_KHR_draw_indirect_count
extension is not supported, support
for the entry points vkCmdDrawIndirectCount and
vkCmdDrawIndexedIndirectCount is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::drawIndirectCount
when queried
via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_sampler_mirror_clamp_to_edge
If the VK_KHR_sampler_mirror_clamp_to_edge
extension is not supported,
support for the VkSamplerAddressMode
VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE
is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::samplerMirrorClampToEdge
when
queried via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_EXT_descriptor_indexing
If the VK_EXT_descriptor_indexing
extension is not supported, support
for the descriptorIndexing feature is
optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::descriptorIndexing
when
queried via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_EXT_scalar_block_layout
If the VK_EXT_scalar_block_layout
extension is not supported, support
for the scalarBlockLayout feature is
optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::scalarBlockLayout
when queried
via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_EXT_shader_viewport_index_layer
If the VK_EXT_shader_viewport_index_layer
extension is not supported,
support for the ShaderViewportIndexLayerEXT
SPIR-V capability is
optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::shaderOutputViewportIndex
and
VkPhysicalDeviceVulkan12Features::shaderOutputLayer
when queried
via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_buffer_device_address
If the VK_KHR_buffer_device_address
extension is not supported,
support for the bufferDeviceAddress feature
is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::bufferDeviceAddress
when
queried via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_shader_atomic_int64
If the VK_KHR_shader_atomic_int64
extension is not supported, support
for the shaderBufferInt64Atomics
feature is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::shaderBufferInt64Atomics
when
queried via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_shader_float16_int8
If the VK_KHR_shader_float16_int8
extension is not supported, support
for at least one of shaderFloat16 and
shaderInt8 feature is optional.
Support for these features are defined by
VkPhysicalDeviceVulkan12Features::shaderFloat16
and
VkPhysicalDeviceVulkan12Features::shaderInt8
when queried via
vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_vulkan_memory_model
If the VK_KHR_vulkan_memory_model
extension is not supported, support
for the vulkanMemoryModel feature is
optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan12Features::vulkanMemoryModel
when queried
via vkGetPhysicalDeviceFeatures2.
Additional Vulkan 1.2 Feature Support
In addition to the promoted extensions described above, Vulkan 1.2 added support for:
-
SPIR-V version 1.4.
-
SPIR-V version 1.5.
-
The samplerMirrorClampToEdge feature which indicates whether the implementation supports the
VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE
sampler address mode. -
The
ShaderNonUniform
capability in SPIR-V version 1.5. -
The shaderOutputViewportIndex feature which indicates that the
ShaderViewportIndex
capability can be used. -
The shaderOutputLayer feature which indicates that the
ShaderLayer
capability can be used. -
The subgroupBroadcastDynamicId feature which allows the “Id” operand of
OpGroupNonUniformBroadcast
to be dynamically uniform within a subgroup, and the “Index” operand ofOpGroupNonUniformQuadBroadcast
to be dynamically uniform within a derivative group, in shader modules of version 1.5 or higher. -
The drawIndirectCount feature which indicates whether the vkCmdDrawIndirectCount and vkCmdDrawIndexedIndirectCount functions can be used.
-
The descriptorIndexing feature which indicates the implementation supports the minimum number of descriptor indexing features as defined in the Feature Requirements section.
-
The samplerFilterMinmax feature which indicates whether the implementation supports the minimum number of image formats that support the
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT
feature bit as defined by thefilterMinmaxSingleComponentFormats
property minimum requirements. -
The framebufferIntegerColorSampleCounts limit which indicates the color sample counts that are supported for all framebuffer color attachments with integer formats.
New Structures
-
Extending VkAttachmentDescription2:
-
Extending VkAttachmentReference2:
-
Extending VkBufferCreateInfo:
-
Extending VkDescriptorSetAllocateInfo:
-
Extending VkDescriptorSetLayoutCreateInfo:
-
Extending VkDescriptorSetLayoutSupport:
-
Extending VkFramebufferCreateInfo:
-
Extending VkImageCreateInfo, VkPhysicalDeviceImageFormatInfo2:
-
Extending VkImageCreateInfo, VkSwapchainCreateInfoKHR, VkPhysicalDeviceImageFormatInfo2:
-
Extending VkMemoryAllocateInfo:
-
Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:
-
Extending VkPhysicalDeviceProperties2:
-
Extending VkRenderPassBeginInfo:
-
Extending VkSamplerCreateInfo:
-
Extending VkSemaphoreCreateInfo, VkPhysicalDeviceExternalSemaphoreInfo:
-
Extending VkSubmitInfo, VkBindSparseInfo:
-
Extending VkSubpassDescription2:
New Enum Constants
-
VK_MAX_DRIVER_INFO_SIZE
-
VK_MAX_DRIVER_NAME_SIZE
-
Extending VkBufferCreateFlagBits:
-
VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
-
-
Extending VkBufferUsageFlagBits:
-
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT
-
-
Extending VkDescriptorPoolCreateFlagBits:
-
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT
-
-
Extending VkDescriptorSetLayoutCreateFlagBits:
-
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
-
-
Extending VkFormatFeatureFlagBits:
-
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT
-
-
Extending VkFramebufferCreateFlagBits:
-
VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT
-
-
Extending VkImageLayout:
-
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
-
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
-
VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
-
VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-
-
Extending VkMemoryAllocateFlagBits:
-
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT
-
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT
-
-
Extending VkResult:
-
VK_ERROR_FRAGMENTATION
-
VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS
-
-
Extending VkSamplerAddressMode:
-
VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE
-
-
Extending VkStructureType:
-
VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2
-
VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT
-
VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2
-
VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT
-
VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO
-
VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO
-
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO
-
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO
-
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT
-
VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO
-
VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO
-
VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO
-
VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO
-
VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO
-
VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES
-
VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO
-
VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2
-
VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO
-
VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO
-
VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO
-
VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO
-
VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO
-
VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2
-
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2
-
VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE
-
VK_STRUCTURE_TYPE_SUBPASS_END_INFO
-
VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO
-
Version 1.1
Vulkan Version 1.1 promoted a number of key extensions into the core API:
The only changes to the functionality added by these extensions were to
VK_KHR_shader_draw_parameters
, which had the
shaderDrawParameters
feature bit
added to determine support in the core API, and
variablePointersStorageBuffer
from VK_KHR_variable_pointers
was
made optional.
Additionally, Vulkan 1.1 added support for group operations with subgroup scope, protected memory, and a new command to enumerate the instance version.
Differences relative to VK_KHR_sampler_ycbcr_conversion
If the VK_KHR_sampler_ycbcr_conversion
extension is not supported,
support for the samplerYcbcrConversion
feature is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan11Features::samplerYcbcrConversion
when
queried via vkGetPhysicalDeviceFeatures2.
Differences relative to VK_KHR_16bit_storage
If the VK_KHR_16bit_storage
extension is not supported, support for
the storageBuffer16BitAccess feature
is optional.
Support for this feature is defined by
VkPhysicalDeviceVulkan11Features::storageBuffer16BitAccess
when
queried via vkGetPhysicalDeviceFeatures2.
New Structures
-
Extending VkBindBufferMemoryInfo:
-
Extending VkBindImageMemoryInfo:
-
Extending VkBindSparseInfo:
-
Extending VkBufferCreateInfo:
-
Extending VkCommandBufferBeginInfo:
-
Extending VkDeviceCreateInfo:
-
Extending VkFenceCreateInfo:
-
Extending VkImageCreateInfo:
-
Extending VkImageFormatProperties2:
-
Extending VkImageMemoryRequirementsInfo2:
-
Extending VkImageViewCreateInfo:
-
Extending VkMemoryAllocateInfo:
-
Extending VkMemoryRequirements2:
-
Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:
-
Extending VkPhysicalDeviceImageFormatInfo2:
-
Extending VkPhysicalDeviceProperties2:
-
Extending VkPipelineTessellationStateCreateInfo:
-
Extending VkRenderPassBeginInfo:
-
Extending VkRenderPassCreateInfo:
-
Extending VkSamplerCreateInfo, VkImageViewCreateInfo:
-
Extending VkSemaphoreCreateInfo:
-
Extending VkSubmitInfo:
New Enum Constants
-
VK_LUID_SIZE
-
VK_MAX_DEVICE_GROUP_SIZE
-
VK_QUEUE_FAMILY_EXTERNAL
-
Extending VkBufferCreateFlagBits:
-
VK_BUFFER_CREATE_PROTECTED_BIT
-
-
Extending VkCommandPoolCreateFlagBits:
-
VK_COMMAND_POOL_CREATE_PROTECTED_BIT
-
-
Extending VkDependencyFlagBits:
-
VK_DEPENDENCY_DEVICE_GROUP_BIT
-
VK_DEPENDENCY_VIEW_LOCAL_BIT
-
-
Extending VkDeviceQueueCreateFlagBits:
-
VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT
-
-
Extending VkFormat:
-
VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
-
VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16
-
VK_FORMAT_B16G16R16G16_422_UNORM
-
VK_FORMAT_B8G8R8G8_422_UNORM
-
VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
-
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
-
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
-
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16
-
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16
-
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16
-
VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16
-
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16
-
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16
-
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16
-
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16
-
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16
-
VK_FORMAT_G16B16G16R16_422_UNORM
-
VK_FORMAT_G16_B16R16_2PLANE_420_UNORM
-
VK_FORMAT_G16_B16R16_2PLANE_422_UNORM
-
VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM
-
VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM
-
VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM
-
VK_FORMAT_G8B8G8R8_422_UNORM
-
VK_FORMAT_G8_B8R8_2PLANE_420_UNORM
-
VK_FORMAT_G8_B8R8_2PLANE_422_UNORM
-
VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM
-
VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM
-
VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM
-
VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16
-
VK_FORMAT_R10X6G10X6_UNORM_2PACK16
-
VK_FORMAT_R10X6_UNORM_PACK16
-
VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16
-
VK_FORMAT_R12X4G12X4_UNORM_2PACK16
-
VK_FORMAT_R12X4_UNORM_PACK16
-
-
Extending VkFormatFeatureFlagBits:
-
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT
-
VK_FORMAT_FEATURE_DISJOINT_BIT
-
VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT
-
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
-
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
-
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
-
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
-
VK_FORMAT_FEATURE_TRANSFER_DST_BIT
-
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT
-
-
Extending VkImageAspectFlagBits:
-
VK_IMAGE_ASPECT_PLANE_0_BIT
-
VK_IMAGE_ASPECT_PLANE_1_BIT
-
VK_IMAGE_ASPECT_PLANE_2_BIT
-
-
Extending VkImageCreateFlagBits:
-
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT
-
VK_IMAGE_CREATE_ALIAS_BIT
-
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT
-
VK_IMAGE_CREATE_DISJOINT_BIT
-
VK_IMAGE_CREATE_EXTENDED_USAGE_BIT
-
VK_IMAGE_CREATE_PROTECTED_BIT
-
VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT
-
-
Extending VkImageLayout:
-
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-
-
Extending VkMemoryHeapFlagBits:
-
VK_MEMORY_HEAP_MULTI_INSTANCE_BIT
-
-
Extending VkMemoryPropertyFlagBits:
-
VK_MEMORY_PROPERTY_PROTECTED_BIT
-
-
Extending VkObjectType:
-
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE
-
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION
-
-
Extending VkPipelineCreateFlagBits:
-
VK_PIPELINE_CREATE_DISPATCH_BASE_BIT
-
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT
-
-
Extending VkQueueFlagBits:
-
VK_QUEUE_PROTECTED_BIT
-
-
Extending VkResult:
-
VK_ERROR_INVALID_EXTERNAL_HANDLE
-
VK_ERROR_OUT_OF_POOL_MEMORY
-
-
Extending VkStructureType:
-
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO
-
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO
-
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO
-
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO
-
VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO
-
VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2
-
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT
-
VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO
-
VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO
-
VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO
-
VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO
-
VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO
-
VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO
-
VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2
-
VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO
-
VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO
-
VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO
-
VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES
-
VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES
-
VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES
-
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO
-
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO
-
VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES
-
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2
-
VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2
-
VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2
-
VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO
-
VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2
-
VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO
-
VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO
-
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO
-
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS
-
VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES
-
VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO
-
VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO
-
VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2
-
VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO
-
VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO
-
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO
-
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES
-
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO
-
VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2
-
VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2
-