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 the shaderFloat16 and shaderInt8 features 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:

New Macros

New Structures

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:

All differences in behavior between these extensions and the corresponding Vulkan 1.1 functionality are summarized below.

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 VkPhysicalDevice16BitStorageFeatures::storageBuffer16BitAccess or VkPhysicalDeviceVulkan11Features::storageBuffer16BitAccess when queried via vkGetPhysicalDeviceFeatures2.

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 VkPhysicalDeviceSamplerYcbcrConversionFeatures::samplerYcbcrConversion or VkPhysicalDeviceVulkan11Features::samplerYcbcrConversion when queried via vkGetPhysicalDeviceFeatures2.

Differences relative to VK_KHR_shader_draw_parameters

If the VK_KHR_shader_draw_parameters extension is not supported, support for the SPV_KHR_shader_draw_parameters SPIR-V extension is optional. Support for this feature is defined by VkPhysicalDeviceShaderDrawParametersFeatures::shaderDrawParameters or VkPhysicalDeviceVulkan11Features::shaderDrawParameters when queried via vkGetPhysicalDeviceFeatures2.

Differences relative to VK_KHR_variable_pointers

If the VK_KHR_variable_pointers extension is not supported, support for the variablePointersStorageBuffer feature is optional. Support for this feature is defined by VkPhysicalDeviceVariablePointersFeatures::variablePointersStorageBuffer or VkPhysicalDeviceVulkan11Features::variablePointersStorageBuffer when queried via vkGetPhysicalDeviceFeatures2.

Additional Vulkan 1.1 Feature Support

In addition to the promoted extensions described above, Vulkan 1.1 added support for:

New Macros

New Structures

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