Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class VK12

extends VK11
Class Inheritance
Known Direct Subclasses
org.lwjgl.vulkan.VK13
Imports
javax.annotation.*, java.nio.*, org.lwjgl.system.*

The core Vulkan 1.2 functionality.

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 GetPhysicalDeviceFeatures2.

Differences relative to VK_KHR_draw_indirect_count

If the VK_KHR_draw_indirect_count extension is not supported, support for the entry points CmdDrawIndirectCount and CmdDrawIndexedIndirectCount is optional. Support for this feature is defined by VkPhysicalDeviceVulkan12Features::drawIndirectCount when queried via GetPhysicalDeviceFeatures2.

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 SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE is optional. Support for this feature is defined by VkPhysicalDeviceVulkan12Features::samplerMirrorClampToEdge when queried via GetPhysicalDeviceFeatures2.

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 GetPhysicalDeviceFeatures2.

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 GetPhysicalDeviceFeatures2.

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 GetPhysicalDeviceFeatures2.

Additional Vulkan 1.2 Feature Support

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

Field Summary

Modifier and TypeField and Description
public static final int
VK_API_VERSION_1_2

The API version number for Vulkan 1.2.

public static final int
public static final int
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT

Extends VkBufferUsageFlagBits.

public static final int
VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT

VkDescriptorBindingFlagBits - Bitmask specifying descriptor set layout binding properties Description

  • DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT indicates that if descriptors in this binding are updated between when the descriptor set is bound in a command buffer and when that command buffer is submitted to a queue, then the submission will use the most recently set descriptors for this binding and the updates do not invalidate the command buffer. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets. Multiple descriptors with this flag set can be updated concurrently in different threads, though the same descriptor must not be updated concurrently by two threads. Descriptors with this flag set can be updated concurrently with the set being bound to a command buffer in another thread, but not concurrently with the set being reset or freed.
  • DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT indicates that descriptors in this binding that are not dynamically used need not contain valid descriptors at the time the descriptors are consumed. A descriptor is dynamically used if any shader invocation executes an instruction that performs any memory access using the descriptor. If a descriptor is not dynamically used, any resource referenced by the descriptor is not considered to be referenced during command execution.
  • DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT indicates that descriptors in this binding can be updated after a command buffer has bound this descriptor set, or while a command buffer that uses this descriptor set is pending execution, as long as the descriptors that are updated are not used by those command buffers. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets in the same way as for DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is also set, then descriptors can be updated as long as they are not dynamically used by any shader invocations. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is not set, then descriptors can be updated as long as they are not statically used by any shader invocations.
  • DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT indicates that this is a variable-sized descriptor binding whose size will be specified when a descriptor set is allocated using this layout. The value of descriptorCount is treated as an upper bound on the size of the binding. This must only be used for the last binding in the descriptor set layout (i.e. the binding with the largest value of binding). For the purposes of counting against limits such as maxDescriptorSet* and maxPerStageDescriptor*, the full value of descriptorCount is counted, except for descriptor bindings with a descriptor type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK, when VkDescriptorSetLayoutCreateInfo::flags does not contain DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT. In this case, descriptorCount specifies the upper bound on the byte size of the binding; thus it counts against the maxInlineUniformBlockSize and maxInlineUniformTotalSize limits instead.
public static final int
VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT

VkDescriptorBindingFlagBits - Bitmask specifying descriptor set layout binding properties Description

  • DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT indicates that if descriptors in this binding are updated between when the descriptor set is bound in a command buffer and when that command buffer is submitted to a queue, then the submission will use the most recently set descriptors for this binding and the updates do not invalidate the command buffer. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets. Multiple descriptors with this flag set can be updated concurrently in different threads, though the same descriptor must not be updated concurrently by two threads. Descriptors with this flag set can be updated concurrently with the set being bound to a command buffer in another thread, but not concurrently with the set being reset or freed.
  • DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT indicates that descriptors in this binding that are not dynamically used need not contain valid descriptors at the time the descriptors are consumed. A descriptor is dynamically used if any shader invocation executes an instruction that performs any memory access using the descriptor. If a descriptor is not dynamically used, any resource referenced by the descriptor is not considered to be referenced during command execution.
  • DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT indicates that descriptors in this binding can be updated after a command buffer has bound this descriptor set, or while a command buffer that uses this descriptor set is pending execution, as long as the descriptors that are updated are not used by those command buffers. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets in the same way as for DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is also set, then descriptors can be updated as long as they are not dynamically used by any shader invocations. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is not set, then descriptors can be updated as long as they are not statically used by any shader invocations.
  • DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT indicates that this is a variable-sized descriptor binding whose size will be specified when a descriptor set is allocated using this layout. The value of descriptorCount is treated as an upper bound on the size of the binding. This must only be used for the last binding in the descriptor set layout (i.e. the binding with the largest value of binding). For the purposes of counting against limits such as maxDescriptorSet* and maxPerStageDescriptor*, the full value of descriptorCount is counted, except for descriptor bindings with a descriptor type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK, when VkDescriptorSetLayoutCreateInfo::flags does not contain DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT. In this case, descriptorCount specifies the upper bound on the byte size of the binding; thus it counts against the maxInlineUniformBlockSize and maxInlineUniformTotalSize limits instead.
public static final int
VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT

VkDescriptorBindingFlagBits - Bitmask specifying descriptor set layout binding properties Description

  • DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT indicates that if descriptors in this binding are updated between when the descriptor set is bound in a command buffer and when that command buffer is submitted to a queue, then the submission will use the most recently set descriptors for this binding and the updates do not invalidate the command buffer. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets. Multiple descriptors with this flag set can be updated concurrently in different threads, though the same descriptor must not be updated concurrently by two threads. Descriptors with this flag set can be updated concurrently with the set being bound to a command buffer in another thread, but not concurrently with the set being reset or freed.
  • DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT indicates that descriptors in this binding that are not dynamically used need not contain valid descriptors at the time the descriptors are consumed. A descriptor is dynamically used if any shader invocation executes an instruction that performs any memory access using the descriptor. If a descriptor is not dynamically used, any resource referenced by the descriptor is not considered to be referenced during command execution.
  • DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT indicates that descriptors in this binding can be updated after a command buffer has bound this descriptor set, or while a command buffer that uses this descriptor set is pending execution, as long as the descriptors that are updated are not used by those command buffers. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets in the same way as for DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is also set, then descriptors can be updated as long as they are not dynamically used by any shader invocations. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is not set, then descriptors can be updated as long as they are not statically used by any shader invocations.
  • DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT indicates that this is a variable-sized descriptor binding whose size will be specified when a descriptor set is allocated using this layout. The value of descriptorCount is treated as an upper bound on the size of the binding. This must only be used for the last binding in the descriptor set layout (i.e. the binding with the largest value of binding). For the purposes of counting against limits such as maxDescriptorSet* and maxPerStageDescriptor*, the full value of descriptorCount is counted, except for descriptor bindings with a descriptor type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK, when VkDescriptorSetLayoutCreateInfo::flags does not contain DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT. In this case, descriptorCount specifies the upper bound on the byte size of the binding; thus it counts against the maxInlineUniformBlockSize and maxInlineUniformTotalSize limits instead.
public static final int
VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT

VkDescriptorBindingFlagBits - Bitmask specifying descriptor set layout binding properties Description

  • DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT indicates that if descriptors in this binding are updated between when the descriptor set is bound in a command buffer and when that command buffer is submitted to a queue, then the submission will use the most recently set descriptors for this binding and the updates do not invalidate the command buffer. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets. Multiple descriptors with this flag set can be updated concurrently in different threads, though the same descriptor must not be updated concurrently by two threads. Descriptors with this flag set can be updated concurrently with the set being bound to a command buffer in another thread, but not concurrently with the set being reset or freed.
  • DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT indicates that descriptors in this binding that are not dynamically used need not contain valid descriptors at the time the descriptors are consumed. A descriptor is dynamically used if any shader invocation executes an instruction that performs any memory access using the descriptor. If a descriptor is not dynamically used, any resource referenced by the descriptor is not considered to be referenced during command execution.
  • DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT indicates that descriptors in this binding can be updated after a command buffer has bound this descriptor set, or while a command buffer that uses this descriptor set is pending execution, as long as the descriptors that are updated are not used by those command buffers. Descriptor bindings created with this flag are also partially exempt from the external synchronization requirement in UpdateDescriptorSetWithTemplateKHR and UpdateDescriptorSets in the same way as for DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is also set, then descriptors can be updated as long as they are not dynamically used by any shader invocations. If DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT is not set, then descriptors can be updated as long as they are not statically used by any shader invocations.
  • DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT indicates that this is a variable-sized descriptor binding whose size will be specified when a descriptor set is allocated using this layout. The value of descriptorCount is treated as an upper bound on the size of the binding. This must only be used for the last binding in the descriptor set layout (i.e. the binding with the largest value of binding). For the purposes of counting against limits such as maxDescriptorSet* and maxPerStageDescriptor*, the full value of descriptorCount is counted, except for descriptor bindings with a descriptor type of DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK, when VkDescriptorSetLayoutCreateInfo::flags does not contain DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT. In this case, descriptorCount specifies the upper bound on the byte size of the binding; thus it counts against the maxInlineUniformBlockSize and maxInlineUniformTotalSize limits instead.
public static final int
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT

Extends VkDescriptorPoolCreateFlagBits.

public static final int
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT

Extends VkDescriptorSetLayoutCreateFlagBits.

public static final int
VK_DRIVER_ID_AMD_OPEN_SOURCE

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_AMD_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_ARM_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_BROADCOM_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_COREAVI_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_GGP_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_GOOGLE_SWIFTSHADER

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_IMAGINATION_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_JUICE_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_DOZEN

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_LLVMPIPE

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_NVK

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_PANVK

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_RADV

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_TURNIP

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_V3DV

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MESA_VENUS

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_MOLTENVK

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_NVIDIA_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_QUALCOMM_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_SAMSUNG_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_DRIVER_ID_VERISILICON_PROPRIETARY

VkDriverId - Khronos driver IDs Description

Note

Khronos driver IDs may be allocated by vendors at any time.

public static final int
VK_ERROR_FRAGMENTATION

Extends VkResult.

public static final int
public static final int
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT

Extends VkFormatFeatureFlagBits.

public static final int
VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT

Extends VkFramebufferCreateFlagBits.

public static final int
public static final int
public static final int
public static final int
public static final int
VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT

Extends VkMemoryAllocateFlagBits.

public static final int
public static final int
VK_RESOLVE_MODE_AVERAGE_BIT

VkResolveModeFlagBits - Bitmask indicating supported depth and stencil resolve modes Description

public static final int
VK_RESOLVE_MODE_MAX_BIT

VkResolveModeFlagBits - Bitmask indicating supported depth and stencil resolve modes Description

public static final int
VK_RESOLVE_MODE_MIN_BIT

VkResolveModeFlagBits - Bitmask indicating supported depth and stencil resolve modes Description

public static final int
VK_RESOLVE_MODE_NONE

VkResolveModeFlagBits - Bitmask indicating supported depth and stencil resolve modes Description

public static final int
VK_RESOLVE_MODE_SAMPLE_ZERO_BIT

VkResolveModeFlagBits - Bitmask indicating supported depth and stencil resolve modes Description

public static final int
VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE

Extends VkSamplerAddressMode.

public static final int
VK_SAMPLER_REDUCTION_MODE_MAX

VkSamplerReductionMode - Specify reduction mode for texture filtering Description

public static final int
VK_SAMPLER_REDUCTION_MODE_MIN

VkSamplerReductionMode - Specify reduction mode for texture filtering Description

public static final int
VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE

VkSamplerReductionMode - Specify reduction mode for texture filtering Description

public static final int
VK_SEMAPHORE_TYPE_BINARY

VkSemaphoreType - Specifies the type of a semaphore object Description

  • SEMAPHORE_TYPE_BINARY specifies a binary semaphore type that has a boolean payload indicating whether the semaphore is currently signaled or unsignaled. When created, the semaphore is in the unsignaled state.
  • SEMAPHORE_TYPE_TIMELINE specifies a timeline semaphore type that has a strictly increasing 64-bit unsigned integer payload indicating whether the semaphore is signaled with respect to a particular reference value. When created, the semaphore payload has the value given by the initialValue field of VkSemaphoreTypeCreateInfo.
public static final int
VK_SEMAPHORE_TYPE_TIMELINE

VkSemaphoreType - Specifies the type of a semaphore object Description

  • SEMAPHORE_TYPE_BINARY specifies a binary semaphore type that has a boolean payload indicating whether the semaphore is currently signaled or unsignaled. When created, the semaphore is in the unsignaled state.
  • SEMAPHORE_TYPE_TIMELINE specifies a timeline semaphore type that has a strictly increasing 64-bit unsigned integer payload indicating whether the semaphore is signaled with respect to a particular reference value. When created, the semaphore payload has the value given by the initialValue field of VkSemaphoreTypeCreateInfo.
public static final int
VK_SEMAPHORE_WAIT_ANY_BIT

VkSemaphoreWaitFlagBits - Bitmask specifying additional parameters of a semaphore wait operation Description

public static final int
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY

VkShaderFloatControlsIndependence - Bitmask specifying whether, and how, shader float controls can be set separately Description

public static final int
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL

VkShaderFloatControlsIndependence - Bitmask specifying whether, and how, shader float controls can be set separately Description

public static final int
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE

VkShaderFloatControlsIndependence - Bitmask specifying whether, and how, shader float controls can be set separately Description

public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
public static final int
VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO

Extends VkStructureType.

public static final int
VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO

Extends VkStructureType.

public static final int
public static final int
public static final int
public static final int
VK_STRUCTURE_TYPE_SUBPASS_END_INFO

Extends VkStructureType.

public static final int
Inherited from org.lwjgl.vulkan.VK11:
VK_API_VERSION_1_1VK_BUFFER_CREATE_PROTECTED_BITVK_CHROMA_LOCATION_COSITED_EVENVK_CHROMA_LOCATION_MIDPOINTVK_COMMAND_POOL_CREATE_PROTECTED_BITVK_DEPENDENCY_DEVICE_GROUP_BITVK_DEPENDENCY_VIEW_LOCAL_BITVK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SETVK_DEVICE_QUEUE_CREATE_PROTECTED_BITVK_ERROR_INVALID_EXTERNAL_HANDLEVK_ERROR_OUT_OF_POOL_MEMORYVK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BITVK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BITVK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BITVK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BITVK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BITVK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BITVK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BITVK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BITVK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BITVK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BITVK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BITVK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BITVK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BITVK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BITVK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BITVK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BITVK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BITVK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BITVK_FENCE_IMPORT_TEMPORARY_BITVK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16VK_FORMAT_B16G16R16G16_422_UNORMVK_FORMAT_B8G8R8G8_422_UNORMVK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITVK_FORMAT_FEATURE_DISJOINT_BITVK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITVK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITVK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITVK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITVK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITVK_FORMAT_FEATURE_TRANSFER_DST_BITVK_FORMAT_FEATURE_TRANSFER_SRC_BITVK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16VK_FORMAT_G16_B16_R16_3PLANE_420_UNORMVK_FORMAT_G16_B16_R16_3PLANE_422_UNORMVK_FORMAT_G16_B16_R16_3PLANE_444_UNORMVK_FORMAT_G16_B16R16_2PLANE_420_UNORMVK_FORMAT_G16_B16R16_2PLANE_422_UNORMVK_FORMAT_G16B16G16R16_422_UNORMVK_FORMAT_G8_B8_R8_3PLANE_420_UNORMVK_FORMAT_G8_B8_R8_3PLANE_422_UNORMVK_FORMAT_G8_B8_R8_3PLANE_444_UNORMVK_FORMAT_G8_B8R8_2PLANE_420_UNORMVK_FORMAT_G8_B8R8_2PLANE_422_UNORMVK_FORMAT_G8B8G8R8_422_UNORMVK_FORMAT_R10X6_UNORM_PACK16VK_FORMAT_R10X6G10X6_UNORM_2PACK16VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16VK_FORMAT_R12X4_UNORM_PACK16VK_FORMAT_R12X4G12X4_UNORM_2PACK16VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16VK_IMAGE_ASPECT_PLANE_0_BITVK_IMAGE_ASPECT_PLANE_1_BITVK_IMAGE_ASPECT_PLANE_2_BITVK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BITVK_IMAGE_CREATE_ALIAS_BITVK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BITVK_IMAGE_CREATE_DISJOINT_BITVK_IMAGE_CREATE_EXTENDED_USAGE_BITVK_IMAGE_CREATE_PROTECTED_BITVK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BITVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMALVK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMALVK_MEMORY_ALLOCATE_DEVICE_MASK_BITVK_MEMORY_HEAP_MULTI_INSTANCE_BITVK_MEMORY_PROPERTY_PROTECTED_BITVK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATEVK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSIONVK_PEER_MEMORY_FEATURE_COPY_DST_BITVK_PEER_MEMORY_FEATURE_COPY_SRC_BITVK_PEER_MEMORY_FEATURE_GENERIC_DST_BITVK_PEER_MEMORY_FEATURE_GENERIC_SRC_BITVK_PIPELINE_CREATE_DISPATCH_BASEVK_PIPELINE_CREATE_DISPATCH_BASE_BITVK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BITVK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANESVK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLYVK_QUEUE_PROTECTED_BITVK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITYVK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITYVK_SAMPLER_YCBCR_RANGE_ITU_FULLVK_SAMPLER_YCBCR_RANGE_ITU_NARROWVK_SEMAPHORE_IMPORT_TEMPORARY_BITVK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFOVK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFOVK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFOVK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFOVK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOVK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORTVK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFOVK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFOVK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFOVK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFOVK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFOVK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFOVK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFOVK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFOVK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFOVK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIESVK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIESVK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIESVK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFOVK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFOVK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIESVK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOVK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFOVK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFOVK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFOVK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTSVK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFOVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFOVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFOVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFOVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURESVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURESVK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFOVK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFOVK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFOVK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFOVK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOVK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESVK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOVK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2VK_SUBGROUP_FEATURE_ARITHMETIC_BITVK_SUBGROUP_FEATURE_BALLOT_BITVK_SUBGROUP_FEATURE_BASIC_BITVK_SUBGROUP_FEATURE_CLUSTERED_BITVK_SUBGROUP_FEATURE_QUAD_BITVK_SUBGROUP_FEATURE_SHUFFLE_BITVK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BITVK_SUBGROUP_FEATURE_VOTE_BITVK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFTVK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT

Constructor Summary

AccessConstructor and Description
protected
VK12()

Method Summary

Modifier and TypeMethod and Description
public static void
nvkCmdBeginRenderPass2(VkCommandBuffer commandBuffer, long pRenderPassBegin, long pSubpassBeginInfo)

Unsafe version of: CmdBeginRenderPass2

public static void
nvkCmdEndRenderPass2(VkCommandBuffer commandBuffer, long pSubpassEndInfo)

Unsafe version of: CmdEndRenderPass2

public static void
nvkCmdNextSubpass2(VkCommandBuffer commandBuffer, long pSubpassBeginInfo, long pSubpassEndInfo)

Unsafe version of: CmdNextSubpass2

public static int
nvkCreateRenderPass2(VkDevice device, long pCreateInfo, long pAllocator, long pRenderPass)

Unsafe version of: CreateRenderPass2

public static long
nvkGetBufferDeviceAddress(VkDevice device, long pInfo)

Unsafe version of: GetBufferDeviceAddress

public static long
public static long
public static int
nvkGetSemaphoreCounterValue(VkDevice device, long semaphore, long pValue)

Unsafe version of: GetSemaphoreCounterValue

public static int
nvkSignalSemaphore(VkDevice device, long pSignalInfo)

Unsafe version of: SignalSemaphore

public static int
nvkWaitSemaphores(VkDevice device, long pWaitInfo, long timeout)

Unsafe version of: WaitSemaphores

public static void
vkCmdBeginRenderPass2(VkCommandBuffer
the command buffer in which to record the command.
commandBuffer
,
VkRenderPassBeginInfo
a pointer to a VkRenderPassBeginInfo structure specifying the render pass to begin an instance of, and the framebuffer the instance uses.
pRenderPassBegin
,
VkSubpassBeginInfo
a pointer to a VkSubpassBeginInfo structure containing information about the subpass which is about to begin rendering.
pSubpassBeginInfo
)

Begin a new render pass.

public static void
vkCmdDrawIndexedIndirectCount(VkCommandBuffer
the command buffer into which the command is recorded.
commandBuffer
,
long
the buffer containing draw parameters.
buffer
,
long
the byte offset into buffer where parameters begin.
offset
,
long
the buffer containing the draw count.
countBuffer
,
long
the byte offset into countBuffer where the draw count begins.
countBufferOffset
,
int
specifies the maximum number of draws that will be executed. The actual number of executed draw calls is the minimum of the count specified in countBuffer and maxDrawCount.
maxDrawCount
,
int
the byte stride between successive sets of draw parameters.
stride
)

Draw parameters with indirect parameters, indexed vertices, and draw count.

public static void
vkCmdDrawIndirectCount(VkCommandBuffer
the command buffer into which the command is recorded.
commandBuffer
,
long
the buffer containing draw parameters.
buffer
,
long
the byte offset into buffer where parameters begin.
offset
,
long
the buffer containing the draw count.
countBuffer
,
long
the byte offset into countBuffer where the draw count begins.
countBufferOffset
,
int
specifies the maximum number of draws that will be executed. The actual number of executed draw calls is the minimum of the count specified in countBuffer and maxDrawCount.
maxDrawCount
,
int
the byte stride between successive sets of draw parameters.
stride
)

Draw primitives with indirect parameters and draw count.

public static void
vkCmdEndRenderPass2(VkCommandBuffer
the command buffer in which to end the current render pass instance.
commandBuffer
,
VkSubpassEndInfo
a pointer to a VkSubpassEndInfo structure containing information about how the last subpass will be ended.
pSubpassEndInfo
)

End the current render pass.

public static void
vkCmdNextSubpass2(VkCommandBuffer
the command buffer in which to record the command.
commandBuffer
,
VkSubpassBeginInfo
a pointer to a VkSubpassBeginInfo structure containing information about the subpass which is about to begin rendering.
pSubpassBeginInfo
,
VkSubpassEndInfo
a pointer to a VkSubpassEndInfo structure containing information about how the previous subpass will be ended.
pSubpassEndInfo
)

Transition to the next subpass of a render pass.

public static int
vkCreateRenderPass2(VkDevice
the logical device that creates the render pass.
device
,
VkRenderPassCreateInfo2
a pointer to a VkRenderPassCreateInfo2 structure describing the parameters of the render pass.
pCreateInfo
,
VkAllocationCallbacks
controls host memory allocation as described in the Memory Allocation chapter.
pAllocator
,
LongBuffer
a pointer to a VkRenderPass handle in which the resulting render pass object is returned.
pRenderPass
)

Create a new render pass object.

public static int
vkCreateRenderPass2(VkDevice device, VkRenderPassCreateInfo2 pCreateInfo, VkAllocationCallbacks pAllocator, long[] pRenderPass)

Array version of: CreateRenderPass2

public static long
vkGetBufferDeviceAddress(VkDevice
the logical device that the buffer was created on.
device
,
VkBufferDeviceAddressInfo
a pointer to a VkBufferDeviceAddressInfo structure specifying the buffer to retrieve an address for.
pInfo
)

Query an address of a buffer.

public static long
vkGetBufferOpaqueCaptureAddress(VkDevice
the logical device that the buffer was created on.
device
,
VkBufferDeviceAddressInfo
a pointer to a VkBufferDeviceAddressInfo structure specifying the buffer to retrieve an address for.
pInfo
)

Query an opaque capture address of a buffer.

public static long
vkGetDeviceMemoryOpaqueCaptureAddress(VkDevice
the logical device that the memory object was allocated on.
device
,
VkDeviceMemoryOpaqueCaptureAddressInfo
a pointer to a VkDeviceMemoryOpaqueCaptureAddressInfo structure specifying the memory object to retrieve an address for.
pInfo
)

Query an opaque capture address of a memory object.

public static int
vkGetSemaphoreCounterValue(VkDevice
the logical device that owns the semaphore.
device
,
long
the handle of the semaphore to query.
semaphore
,
LongBuffer
a pointer to a 64-bit integer value in which the current counter value of the semaphore is returned.
pValue
)

Query the current state of a timeline semaphore.

public static int
vkGetSemaphoreCounterValue(VkDevice device, long semaphore, long[] pValue)

Array version of: GetSemaphoreCounterValue

public static void
vkResetQueryPool(VkDevice
the logical device that owns the query pool.
device
,
long
the handle of the query pool managing the queries being reset.
queryPool
,
int
the initial query index to reset.
firstQuery
,
int
the number of queries to reset.
queryCount
)

Reset queries in a query pool.

public static int
vkSignalSemaphore(VkDevice
the logical device that owns the semaphore.
device
,
VkSemaphoreSignalInfo
a pointer to a VkSemaphoreSignalInfo structure containing information about the signal operation.
pSignalInfo
)

Signal a timeline semaphore on the host.

public static int
vkWaitSemaphores(VkDevice
the logical device that owns the semaphores.
device
,
VkSemaphoreWaitInfo
a pointer to a VkSemaphoreWaitInfo structure containing information about the wait condition.
pWaitInfo
,
long
the timeout period in units of nanoseconds. timeout is adjusted to the closest value allowed by the implementation-dependent timeout accuracy, which may be substantially longer than one nanosecond, and may be longer than the requested period.
timeout
)

Wait for timeline semaphores on the host.

Inherited from org.lwjgl.vulkan.VK11:
nvkBindBufferMemory2nvkBindImageMemory2nvkCreateDescriptorUpdateTemplatenvkCreateSamplerYcbcrConversionnvkDestroyDescriptorUpdateTemplatenvkDestroySamplerYcbcrConversionnvkEnumerateInstanceVersionnvkEnumeratePhysicalDeviceGroupsnvkGetBufferMemoryRequirements2nvkGetDescriptorSetLayoutSupportnvkGetDeviceGroupPeerMemoryFeaturesnvkGetDeviceQueue2nvkGetImageMemoryRequirements2nvkGetImageSparseMemoryRequirements2nvkGetPhysicalDeviceExternalBufferPropertiesnvkGetPhysicalDeviceExternalFencePropertiesnvkGetPhysicalDeviceExternalSemaphorePropertiesnvkGetPhysicalDeviceFeatures2nvkGetPhysicalDeviceFormatProperties2nvkGetPhysicalDeviceImageFormatProperties2nvkGetPhysicalDeviceMemoryProperties2nvkGetPhysicalDeviceProperties2nvkGetPhysicalDeviceQueueFamilyProperties2nvkGetPhysicalDeviceSparseImageFormatProperties2vkBindBufferMemory2vkBindImageMemory2vkCmdDispatchBasevkCmdSetDeviceMaskvkCreateDescriptorUpdateTemplatevkCreateDescriptorUpdateTemplatevkCreateSamplerYcbcrConversionvkCreateSamplerYcbcrConversionvkDestroyDescriptorUpdateTemplatevkDestroySamplerYcbcrConversionvkEnumerateInstanceVersionvkEnumerateInstanceVersionvkEnumeratePhysicalDeviceGroupsvkEnumeratePhysicalDeviceGroupsvkGetBufferMemoryRequirements2vkGetDescriptorSetLayoutSupportvkGetDeviceGroupPeerMemoryFeaturesvkGetDeviceGroupPeerMemoryFeaturesvkGetDeviceQueue2vkGetImageMemoryRequirements2vkGetImageSparseMemoryRequirements2vkGetImageSparseMemoryRequirements2vkGetPhysicalDeviceExternalBufferPropertiesvkGetPhysicalDeviceExternalFencePropertiesvkGetPhysicalDeviceExternalSemaphorePropertiesvkGetPhysicalDeviceFeatures2vkGetPhysicalDeviceFormatProperties2vkGetPhysicalDeviceImageFormatProperties2vkGetPhysicalDeviceMemoryProperties2vkGetPhysicalDeviceProperties2vkGetPhysicalDeviceQueueFamilyProperties2vkGetPhysicalDeviceQueueFamilyProperties2vkGetPhysicalDeviceSparseImageFormatProperties2vkGetPhysicalDeviceSparseImageFormatProperties2vkTrimCommandPoolvkUpdateDescriptorSetWithTemplate