public class VK11 extends VK10
Vulkan Version 1.1 promoted a number of key extensions into the core API:
KHR_16bit_storageKHR_bind_memory2KHR_dedicated_allocationKHR_descriptor_update_templateKHR_device_groupKHR_device_group_creationKHR_external_memoryKHR_external_memory_capabilitiesKHR_external_semaphoreKHR_external_semaphore_capabilitiesKHR_external_fenceKHR_external_fence_capabilitiesKHR_get_memory_requirements2KHR_get_physical_device_properties2KHR_maintenance1KHR_maintenance2KHR_maintenance3KHR_multiviewKHR_relaxed_block_layoutKHR_sampler_ycbcr_conversionKHR_shader_draw_parametersKHR_storage_buffer_storage_classKHR_variable_pointersThe only changes to the functionality added by these extensions were to VK_KHR_shader_draw_parameters, which had a
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 subgroup operations,
protected memory, and a new command to enumerate the
instance version.
| Modifier and Type | Field and Description |
|---|---|
static int |
VK_API_VERSION_1_1
The API version number for Vulkan 1.1.
|
static int |
VK_BUFFER_CREATE_PROTECTED_BIT
Extends
VkBufferCreateFlagBits. |
static int |
VK_CHROMA_LOCATION_COSITED_EVEN
VkChromaLocation - Position of downsampled chroma samples
|
static int |
VK_CHROMA_LOCATION_MIDPOINT
VkChromaLocation - Position of downsampled chroma samples
|
static int |
VK_COMMAND_POOL_CREATE_PROTECTED_BIT
Extends
VkCommandPoolCreateFlagBits. |
static int |
VK_DEPENDENCY_DEVICE_GROUP_BIT
Extends
VkDependencyFlagBits. |
static int |
VK_DEPENDENCY_VIEW_LOCAL_BIT
Extends
VkDependencyFlagBits. |
static int |
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET
VkDescriptorUpdateTemplateType - Indicates the valid usage of the descriptor update template
|
static int |
VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT
Extends
VkDeviceQueueCreateFlagBits. |
static int |
VK_ERROR_INVALID_EXTERNAL_HANDLE
Extends
VkResult. |
static int |
VK_ERROR_OUT_OF_POOL_MEMORY
Extends
VkResult. |
static int |
VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
VkExternalFenceFeatureFlagBits - Bitfield describing features of an external fence handle type
|
static int |
VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
VkExternalFenceFeatureFlagBits - Bitfield describing features of an external fence handle type
|
static int |
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT
VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence handle types
|
static int |
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT
VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence handle types
|
static int |
VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT
VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence handle types
|
static int |
VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT
VkExternalFenceHandleTypeFlagBits - Bitmask of valid external fence handle types
|
static int |
VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT
VkExternalMemoryFeatureFlagBits - Bitmask specifying features of an external memory handle type
|
static int |
VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT
VkExternalMemoryFeatureFlagBits - Bitmask specifying features of an external memory handle type
|
static int |
VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT
VkExternalMemoryFeatureFlagBits - Bitmask specifying features of an external memory handle type
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT
VkExternalMemoryHandleTypeFlagBits - Bit specifying external memory handle types
|
static int |
VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT
VkExternalSemaphoreFeatureFlagBits - Bitfield describing features of an external semaphore handle type
|
static int |
VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT
VkExternalSemaphoreFeatureFlagBits - Bitfield describing features of an external semaphore handle type
|
static int |
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT
VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external semaphore handle types
|
static int |
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT
VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external semaphore handle types
|
static int |
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT
VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external semaphore handle types
|
static int |
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT
VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external semaphore handle types
|
static int |
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT
VkExternalSemaphoreHandleTypeFlagBits - Bitmask of valid external semaphore handle types
|
static int |
VK_FENCE_IMPORT_TEMPORARY_BIT
VkFenceImportFlagBits - Bitmask specifying additional parameters of fence payload import
|
static int |
VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_B16G16R16G16_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_B8G8R8G8_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_DISJOINT_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_TRANSFER_DST_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT
Extends
VkFormatFeatureFlagBits. |
static int |
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G16_B16R16_2PLANE_420_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G16_B16R16_2PLANE_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G16B16G16R16_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G8_B8R8_2PLANE_420_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G8_B8R8_2PLANE_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_G8B8G8R8_422_UNORM
Extends
VkFormat. |
static int |
VK_FORMAT_R10X6_UNORM_PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_R10X6G10X6_UNORM_2PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_R12X4_UNORM_PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_R12X4G12X4_UNORM_2PACK16
Extends
VkFormat. |
static int |
VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16
Extends
VkFormat. |
static int |
VK_IMAGE_ASPECT_PLANE_0_BIT
Extends
VkImageAspectFlagBits. |
static int |
VK_IMAGE_ASPECT_PLANE_1_BIT
Extends
VkImageAspectFlagBits. |
static int |
VK_IMAGE_ASPECT_PLANE_2_BIT
Extends
VkImageAspectFlagBits. |
static int |
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_CREATE_ALIAS_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_CREATE_DISJOINT_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_CREATE_EXTENDED_USAGE_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_CREATE_PROTECTED_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT
Extends
VkImageCreateFlagBits. |
static int |
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
Extends
VkImageLayout. |
static int |
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
Extends
VkImageLayout. |
static int |
VK_LUID_SIZE
API Constants
|
static int |
VK_MAX_DEVICE_GROUP_SIZE
API Constants
|
static int |
VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT
VkMemoryAllocateFlagBits - Bitmask specifying flags for a device memory allocation
|
static int |
VK_MEMORY_HEAP_MULTI_INSTANCE_BIT
Extends
VkMemoryHeapFlagBits. |
static int |
VK_MEMORY_PROPERTY_PROTECTED_BIT
Extends
VkMemoryPropertyFlagBits. |
static int |
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE
Extends
VkObjectType. |
static int |
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION
Extends
VkObjectType. |
static int |
VK_PEER_MEMORY_FEATURE_COPY_DST_BIT
VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory features
|
static int |
VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT
VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory features
|
static int |
VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT
VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory features
|
static int |
VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT
VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory features
|
static int |
VK_PIPELINE_CREATE_DISPATCH_BASE
Extends
VkPipelineCreateFlagBits. |
static int |
VK_PIPELINE_CREATE_DISPATCH_BASE_BIT
Extends
VkPipelineCreateFlagBits. |
static int |
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT
Extends
VkPipelineCreateFlagBits. |
static int |
VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
VkPointClippingBehavior - Enum specifying the point clipping behavior
|
static int |
VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
VkPointClippingBehavior - Enum specifying the point clipping behavior
|
static int |
VK_QUEUE_FAMILY_EXTERNAL
API Constants
|
static int |
VK_QUEUE_PROTECTED_BIT
Extends
VkQueueFlagBits. |
static int |
VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY
VkSamplerYcbcrModelConversion - Color model component of a color space
|
static int |
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020
VkSamplerYcbcrModelConversion - Color model component of a color space
|
static int |
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601
VkSamplerYcbcrModelConversion - Color model component of a color space
|
static int |
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709
VkSamplerYcbcrModelConversion - Color model component of a color space
|
static int |
VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY
VkSamplerYcbcrModelConversion - Color model component of a color space
|
static int |
VK_SAMPLER_YCBCR_RANGE_ITU_FULL
VkSamplerYcbcrRange - Range of encoded values in a color space
|
static int |
VK_SAMPLER_YCBCR_RANGE_ITU_NARROW
VkSamplerYcbcrRange - Range of encoded values in a color space
|
static int |
VK_SEMAPHORE_IMPORT_TEMPORARY_BIT
VkSemaphoreImportFlagBits - Bitmask specifying additional parameters of semaphore payload import
|
static int |
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2
Extends
VkStructureType. |
static int |
VK_SUBGROUP_FEATURE_ARITHMETIC_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_BALLOT_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_BASIC_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_CLUSTERED_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_QUAD_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_SHUFFLE_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_SUBGROUP_FEATURE_VOTE_BIT
VkSubgroupFeatureFlagBits - Enum describing what subgroup operations are supported
|
static int |
VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT
VkTessellationDomainOrigin - Enum describing tessellation domain origin
|
static int |
VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT
VkTessellationDomainOrigin - Enum describing tessellation domain origin
|
VK_ACCESS_COLOR_ATTACHMENT_READ_BIT, VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, VK_ACCESS_HOST_READ_BIT, VK_ACCESS_HOST_WRITE_BIT, VK_ACCESS_INDEX_READ_BIT, VK_ACCESS_INDIRECT_COMMAND_READ_BIT, VK_ACCESS_INPUT_ATTACHMENT_READ_BIT, VK_ACCESS_MEMORY_READ_BIT, VK_ACCESS_MEMORY_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT, VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT, VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_UNIFORM_READ_BIT, VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, VK_API_VERSION_1_0, VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT, VK_ATTACHMENT_LOAD_OP_CLEAR, VK_ATTACHMENT_LOAD_OP_DONT_CARE, VK_ATTACHMENT_LOAD_OP_LOAD, VK_ATTACHMENT_STORE_OP_DONT_CARE, VK_ATTACHMENT_STORE_OP_STORE, VK_ATTACHMENT_UNUSED, VK_BLEND_FACTOR_CONSTANT_ALPHA, VK_BLEND_FACTOR_CONSTANT_COLOR, VK_BLEND_FACTOR_DST_ALPHA, VK_BLEND_FACTOR_DST_COLOR, VK_BLEND_FACTOR_ONE, VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA, VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR, VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA, VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR, VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA, VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR, VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA, VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR, VK_BLEND_FACTOR_SRC_ALPHA, VK_BLEND_FACTOR_SRC_ALPHA_SATURATE, VK_BLEND_FACTOR_SRC_COLOR, VK_BLEND_FACTOR_SRC1_ALPHA, VK_BLEND_FACTOR_SRC1_COLOR, VK_BLEND_FACTOR_ZERO, VK_BLEND_OP_ADD, VK_BLEND_OP_MAX, VK_BLEND_OP_MIN, VK_BLEND_OP_REVERSE_SUBTRACT, VK_BLEND_OP_SUBTRACT, VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK, VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE, VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK, VK_BORDER_COLOR_INT_OPAQUE_BLACK, VK_BORDER_COLOR_INT_OPAQUE_WHITE, VK_BORDER_COLOR_INT_TRANSPARENT_BLACK, VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, VK_BUFFER_CREATE_SPARSE_BINDING_BIT, VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT, VK_BUFFER_USAGE_INDEX_BUFFER_BIT, VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT, VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, VK_BUFFER_USAGE_TRANSFER_DST_BIT, VK_BUFFER_USAGE_TRANSFER_SRC_BIT, VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT, VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, VK_BUFFER_USAGE_VERTEX_BUFFER_BIT, VK_COLOR_COMPONENT_A_BIT, VK_COLOR_COMPONENT_B_BIT, VK_COLOR_COMPONENT_G_BIT, VK_COLOR_COMPONENT_R_BIT, VK_COMMAND_BUFFER_LEVEL_PRIMARY, VK_COMMAND_BUFFER_LEVEL_SECONDARY, VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT, VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, VK_COMMAND_POOL_CREATE_TRANSIENT_BIT, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, VK_COMPARE_OP_ALWAYS, VK_COMPARE_OP_EQUAL, VK_COMPARE_OP_GREATER, VK_COMPARE_OP_GREATER_OR_EQUAL, VK_COMPARE_OP_LESS, VK_COMPARE_OP_LESS_OR_EQUAL, VK_COMPARE_OP_NEVER, VK_COMPARE_OP_NOT_EQUAL, VK_COMPONENT_SWIZZLE_A, VK_COMPONENT_SWIZZLE_B, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_IDENTITY, VK_COMPONENT_SWIZZLE_ONE, VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_ZERO, VK_CULL_MODE_BACK_BIT, VK_CULL_MODE_FRONT_AND_BACK, VK_CULL_MODE_FRONT_BIT, VK_CULL_MODE_NONE, VK_DEPENDENCY_BY_REGION_BIT, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, VK_DESCRIPTOR_TYPE_SAMPLER, VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, VK_DYNAMIC_STATE_BLEND_CONSTANTS, VK_DYNAMIC_STATE_DEPTH_BIAS, VK_DYNAMIC_STATE_DEPTH_BOUNDS, VK_DYNAMIC_STATE_LINE_WIDTH, VK_DYNAMIC_STATE_SCISSOR, VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK, VK_DYNAMIC_STATE_STENCIL_REFERENCE, VK_DYNAMIC_STATE_STENCIL_WRITE_MASK, VK_DYNAMIC_STATE_VIEWPORT, VK_ERROR_DEVICE_LOST, VK_ERROR_EXTENSION_NOT_PRESENT, VK_ERROR_FEATURE_NOT_PRESENT, VK_ERROR_FORMAT_NOT_SUPPORTED, VK_ERROR_FRAGMENTED_POOL, VK_ERROR_INCOMPATIBLE_DRIVER, VK_ERROR_INITIALIZATION_FAILED, VK_ERROR_LAYER_NOT_PRESENT, VK_ERROR_MEMORY_MAP_FAILED, VK_ERROR_OUT_OF_DEVICE_MEMORY, VK_ERROR_OUT_OF_HOST_MEMORY, VK_ERROR_TOO_MANY_OBJECTS, VK_EVENT_RESET, VK_EVENT_SET, VK_FALSE, VK_FENCE_CREATE_SIGNALED_BIT, VK_FILTER_LINEAR, VK_FILTER_NEAREST, VK_FORMAT_A1R5G5B5_UNORM_PACK16, VK_FORMAT_A2B10G10R10_SINT_PACK32, VK_FORMAT_A2B10G10R10_SNORM_PACK32, VK_FORMAT_A2B10G10R10_SSCALED_PACK32, VK_FORMAT_A2B10G10R10_UINT_PACK32, VK_FORMAT_A2B10G10R10_UNORM_PACK32, VK_FORMAT_A2B10G10R10_USCALED_PACK32, VK_FORMAT_A2R10G10B10_SINT_PACK32, VK_FORMAT_A2R10G10B10_SNORM_PACK32, VK_FORMAT_A2R10G10B10_SSCALED_PACK32, VK_FORMAT_A2R10G10B10_UINT_PACK32, VK_FORMAT_A2R10G10B10_UNORM_PACK32, VK_FORMAT_A2R10G10B10_USCALED_PACK32, VK_FORMAT_A8B8G8R8_SINT_PACK32, VK_FORMAT_A8B8G8R8_SNORM_PACK32, VK_FORMAT_A8B8G8R8_SRGB_PACK32, VK_FORMAT_A8B8G8R8_SSCALED_PACK32, VK_FORMAT_A8B8G8R8_UINT_PACK32, VK_FORMAT_A8B8G8R8_UNORM_PACK32, VK_FORMAT_A8B8G8R8_USCALED_PACK32, VK_FORMAT_ASTC_10x10_SRGB_BLOCK, VK_FORMAT_ASTC_10x10_UNORM_BLOCK, VK_FORMAT_ASTC_10x5_SRGB_BLOCK, VK_FORMAT_ASTC_10x5_UNORM_BLOCK, VK_FORMAT_ASTC_10x6_SRGB_BLOCK, VK_FORMAT_ASTC_10x6_UNORM_BLOCK, VK_FORMAT_ASTC_10x8_SRGB_BLOCK, VK_FORMAT_ASTC_10x8_UNORM_BLOCK, VK_FORMAT_ASTC_12x10_SRGB_BLOCK, VK_FORMAT_ASTC_12x10_UNORM_BLOCK, VK_FORMAT_ASTC_12x12_SRGB_BLOCK, VK_FORMAT_ASTC_12x12_UNORM_BLOCK, VK_FORMAT_ASTC_4x4_SRGB_BLOCK, VK_FORMAT_ASTC_4x4_UNORM_BLOCK, VK_FORMAT_ASTC_5x4_SRGB_BLOCK, VK_FORMAT_ASTC_5x4_UNORM_BLOCK, VK_FORMAT_ASTC_5x5_SRGB_BLOCK, VK_FORMAT_ASTC_5x5_UNORM_BLOCK, VK_FORMAT_ASTC_6x5_SRGB_BLOCK, VK_FORMAT_ASTC_6x5_UNORM_BLOCK, VK_FORMAT_ASTC_6x6_SRGB_BLOCK, VK_FORMAT_ASTC_6x6_UNORM_BLOCK, VK_FORMAT_ASTC_8x5_SRGB_BLOCK, VK_FORMAT_ASTC_8x5_UNORM_BLOCK, VK_FORMAT_ASTC_8x6_SRGB_BLOCK, VK_FORMAT_ASTC_8x6_UNORM_BLOCK, VK_FORMAT_ASTC_8x8_SRGB_BLOCK, VK_FORMAT_ASTC_8x8_UNORM_BLOCK, VK_FORMAT_B10G11R11_UFLOAT_PACK32, VK_FORMAT_B4G4R4A4_UNORM_PACK16, VK_FORMAT_B5G5R5A1_UNORM_PACK16, VK_FORMAT_B5G6R5_UNORM_PACK16, VK_FORMAT_B8G8R8_SINT, VK_FORMAT_B8G8R8_SNORM, VK_FORMAT_B8G8R8_SRGB, VK_FORMAT_B8G8R8_SSCALED, VK_FORMAT_B8G8R8_UINT, VK_FORMAT_B8G8R8_UNORM, VK_FORMAT_B8G8R8_USCALED, VK_FORMAT_B8G8R8A8_SINT, VK_FORMAT_B8G8R8A8_SNORM, VK_FORMAT_B8G8R8A8_SRGB, VK_FORMAT_B8G8R8A8_SSCALED, VK_FORMAT_B8G8R8A8_UINT, VK_FORMAT_B8G8R8A8_UNORM, VK_FORMAT_B8G8R8A8_USCALED, VK_FORMAT_BC1_RGB_SRGB_BLOCK, VK_FORMAT_BC1_RGB_UNORM_BLOCK, VK_FORMAT_BC1_RGBA_SRGB_BLOCK, VK_FORMAT_BC1_RGBA_UNORM_BLOCK, VK_FORMAT_BC2_SRGB_BLOCK, VK_FORMAT_BC2_UNORM_BLOCK, VK_FORMAT_BC3_SRGB_BLOCK, VK_FORMAT_BC3_UNORM_BLOCK, VK_FORMAT_BC4_SNORM_BLOCK, VK_FORMAT_BC4_UNORM_BLOCK, VK_FORMAT_BC5_SNORM_BLOCK, VK_FORMAT_BC5_UNORM_BLOCK, VK_FORMAT_BC6H_SFLOAT_BLOCK, VK_FORMAT_BC6H_UFLOAT_BLOCK, VK_FORMAT_BC7_SRGB_BLOCK, VK_FORMAT_BC7_UNORM_BLOCK, VK_FORMAT_D16_UNORM, VK_FORMAT_D16_UNORM_S8_UINT, VK_FORMAT_D24_UNORM_S8_UINT, VK_FORMAT_D32_SFLOAT, VK_FORMAT_D32_SFLOAT_S8_UINT, VK_FORMAT_E5B9G9R9_UFLOAT_PACK32, VK_FORMAT_EAC_R11_SNORM_BLOCK, VK_FORMAT_EAC_R11_UNORM_BLOCK, VK_FORMAT_EAC_R11G11_SNORM_BLOCK, VK_FORMAT_EAC_R11G11_UNORM_BLOCK, VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK, VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK, VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK, VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK, VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK, VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK, VK_FORMAT_FEATURE_BLIT_DST_BIT, VK_FORMAT_FEATURE_BLIT_SRC_BIT, VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT, VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT, VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT, VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT, VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT, VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT, VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT, VK_FORMAT_R16_SFLOAT, VK_FORMAT_R16_SINT, VK_FORMAT_R16_SNORM, VK_FORMAT_R16_SSCALED, VK_FORMAT_R16_UINT, VK_FORMAT_R16_UNORM, VK_FORMAT_R16_USCALED, VK_FORMAT_R16G16_SFLOAT, VK_FORMAT_R16G16_SINT, VK_FORMAT_R16G16_SNORM, VK_FORMAT_R16G16_SSCALED, VK_FORMAT_R16G16_UINT, VK_FORMAT_R16G16_UNORM, VK_FORMAT_R16G16_USCALED, VK_FORMAT_R16G16B16_SFLOAT, VK_FORMAT_R16G16B16_SINT, VK_FORMAT_R16G16B16_SNORM, VK_FORMAT_R16G16B16_SSCALED, VK_FORMAT_R16G16B16_UINT, VK_FORMAT_R16G16B16_UNORM, VK_FORMAT_R16G16B16_USCALED, VK_FORMAT_R16G16B16A16_SFLOAT, VK_FORMAT_R16G16B16A16_SINT, VK_FORMAT_R16G16B16A16_SNORM, VK_FORMAT_R16G16B16A16_SSCALED, VK_FORMAT_R16G16B16A16_UINT, VK_FORMAT_R16G16B16A16_UNORM, VK_FORMAT_R16G16B16A16_USCALED, VK_FORMAT_R32_SFLOAT, VK_FORMAT_R32_SINT, VK_FORMAT_R32_UINT, VK_FORMAT_R32G32_SFLOAT, VK_FORMAT_R32G32_SINT, VK_FORMAT_R32G32_UINT, VK_FORMAT_R32G32B32_SFLOAT, VK_FORMAT_R32G32B32_SINT, VK_FORMAT_R32G32B32_UINT, VK_FORMAT_R32G32B32A32_SFLOAT, VK_FORMAT_R32G32B32A32_SINT, VK_FORMAT_R32G32B32A32_UINT, VK_FORMAT_R4G4_UNORM_PACK8, VK_FORMAT_R4G4B4A4_UNORM_PACK16, VK_FORMAT_R5G5B5A1_UNORM_PACK16, VK_FORMAT_R5G6B5_UNORM_PACK16, VK_FORMAT_R64_SFLOAT, VK_FORMAT_R64_SINT, VK_FORMAT_R64_UINT, VK_FORMAT_R64G64_SFLOAT, VK_FORMAT_R64G64_SINT, VK_FORMAT_R64G64_UINT, VK_FORMAT_R64G64B64_SFLOAT, VK_FORMAT_R64G64B64_SINT, VK_FORMAT_R64G64B64_UINT, VK_FORMAT_R64G64B64A64_SFLOAT, VK_FORMAT_R64G64B64A64_SINT, VK_FORMAT_R64G64B64A64_UINT, VK_FORMAT_R8_SINT, VK_FORMAT_R8_SNORM, VK_FORMAT_R8_SRGB, VK_FORMAT_R8_SSCALED, VK_FORMAT_R8_UINT, VK_FORMAT_R8_UNORM, VK_FORMAT_R8_USCALED, VK_FORMAT_R8G8_SINT, VK_FORMAT_R8G8_SNORM, VK_FORMAT_R8G8_SRGB, VK_FORMAT_R8G8_SSCALED, VK_FORMAT_R8G8_UINT, VK_FORMAT_R8G8_UNORM, VK_FORMAT_R8G8_USCALED, VK_FORMAT_R8G8B8_SINT, VK_FORMAT_R8G8B8_SNORM, VK_FORMAT_R8G8B8_SRGB, VK_FORMAT_R8G8B8_SSCALED, VK_FORMAT_R8G8B8_UINT, VK_FORMAT_R8G8B8_UNORM, VK_FORMAT_R8G8B8_USCALED, VK_FORMAT_R8G8B8A8_SINT, VK_FORMAT_R8G8B8A8_SNORM, VK_FORMAT_R8G8B8A8_SRGB, VK_FORMAT_R8G8B8A8_SSCALED, VK_FORMAT_R8G8B8A8_UINT, VK_FORMAT_R8G8B8A8_UNORM, VK_FORMAT_R8G8B8A8_USCALED, VK_FORMAT_S8_UINT, VK_FORMAT_UNDEFINED, VK_FORMAT_X8_D24_UNORM_PACK32, VK_FRONT_FACE_CLOCKWISE, VK_FRONT_FACE_COUNTER_CLOCKWISE, VK_HEADER_VERSION, VK_IMAGE_ASPECT_COLOR_BIT, VK_IMAGE_ASPECT_DEPTH_BIT, VK_IMAGE_ASPECT_METADATA_BIT, VK_IMAGE_ASPECT_STENCIL_BIT, VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT, VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_PREINITIALIZED, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_TILING_LINEAR, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_TYPE_1D, VK_IMAGE_TYPE_2D, VK_IMAGE_TYPE_3D, VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT, VK_IMAGE_USAGE_SAMPLED_BIT, VK_IMAGE_USAGE_STORAGE_BIT, VK_IMAGE_USAGE_TRANSFER_DST_BIT, VK_IMAGE_USAGE_TRANSFER_SRC_BIT, VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, VK_IMAGE_VIEW_TYPE_1D, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D, VK_IMAGE_VIEW_TYPE_2D_ARRAY, VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, VK_INCOMPLETE, VK_INDEX_TYPE_UINT16, VK_INDEX_TYPE_UINT32, VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, VK_LOD_CLAMP_NONE, VK_LOGIC_OP_AND, VK_LOGIC_OP_AND_INVERTED, VK_LOGIC_OP_AND_REVERSE, VK_LOGIC_OP_CLEAR, VK_LOGIC_OP_COPY, VK_LOGIC_OP_COPY_INVERTED, VK_LOGIC_OP_EQUIVALENT, VK_LOGIC_OP_INVERT, VK_LOGIC_OP_NAND, VK_LOGIC_OP_NO_OP, VK_LOGIC_OP_NOR, VK_LOGIC_OP_OR, VK_LOGIC_OP_OR_INVERTED, VK_LOGIC_OP_OR_REVERSE, VK_LOGIC_OP_SET, VK_LOGIC_OP_XOR, VK_MAX_DESCRIPTION_SIZE, VK_MAX_EXTENSION_NAME_SIZE, VK_MAX_MEMORY_HEAPS, VK_MAX_MEMORY_TYPES, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, VK_MEMORY_HEAP_DEVICE_LOCAL_BIT, VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, VK_MEMORY_PROPERTY_HOST_CACHED_BIT, VK_MEMORY_PROPERTY_HOST_COHERENT_BIT, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT, VK_NOT_READY, VK_NULL_HANDLE, VK_OBJECT_TYPE_BUFFER, VK_OBJECT_TYPE_BUFFER_VIEW, VK_OBJECT_TYPE_COMMAND_BUFFER, VK_OBJECT_TYPE_COMMAND_POOL, VK_OBJECT_TYPE_DESCRIPTOR_POOL, VK_OBJECT_TYPE_DESCRIPTOR_SET, VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT, VK_OBJECT_TYPE_DEVICE, VK_OBJECT_TYPE_DEVICE_MEMORY, VK_OBJECT_TYPE_EVENT, VK_OBJECT_TYPE_FENCE, VK_OBJECT_TYPE_FRAMEBUFFER, VK_OBJECT_TYPE_IMAGE, VK_OBJECT_TYPE_IMAGE_VIEW, VK_OBJECT_TYPE_INSTANCE, VK_OBJECT_TYPE_PHYSICAL_DEVICE, VK_OBJECT_TYPE_PIPELINE, VK_OBJECT_TYPE_PIPELINE_CACHE, VK_OBJECT_TYPE_PIPELINE_LAYOUT, VK_OBJECT_TYPE_QUERY_POOL, VK_OBJECT_TYPE_QUEUE, VK_OBJECT_TYPE_RENDER_PASS, VK_OBJECT_TYPE_SAMPLER, VK_OBJECT_TYPE_SEMAPHORE, VK_OBJECT_TYPE_SHADER_MODULE, VK_OBJECT_TYPE_UNKNOWN, VK_PHYSICAL_DEVICE_TYPE_CPU, VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU, VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU, VK_PHYSICAL_DEVICE_TYPE_OTHER, VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU, VK_PIPELINE_BIND_POINT_COMPUTE, VK_PIPELINE_BIND_POINT_GRAPHICS, VK_PIPELINE_CACHE_HEADER_VERSION_ONE, VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT, VK_PIPELINE_CREATE_DERIVATIVE_BIT, VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT, VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT, VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT, VK_PIPELINE_STAGE_HOST_BIT, VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT, VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT, VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_VERTEX_INPUT_BIT, VK_PIPELINE_STAGE_VERTEX_SHADER_BIT, VK_POLYGON_MODE_FILL, VK_POLYGON_MODE_LINE, VK_POLYGON_MODE_POINT, VK_PRIMITIVE_TOPOLOGY_LINE_LIST, VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY, VK_PRIMITIVE_TOPOLOGY_LINE_STRIP, VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY, VK_PRIMITIVE_TOPOLOGY_PATCH_LIST, VK_PRIMITIVE_TOPOLOGY_POINT_LIST, VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN, VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST, VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY, VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP, VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY, VK_QUERY_CONTROL_PRECISE_BIT, VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT, VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT, VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT, VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT, VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT, VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT, VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT, VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT, VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT, VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT, VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT, VK_QUERY_RESULT_64_BIT, VK_QUERY_RESULT_PARTIAL_BIT, VK_QUERY_RESULT_WAIT_BIT, VK_QUERY_RESULT_WITH_AVAILABILITY_BIT, VK_QUERY_TYPE_OCCLUSION, VK_QUERY_TYPE_PIPELINE_STATISTICS, VK_QUERY_TYPE_TIMESTAMP, VK_QUEUE_COMPUTE_BIT, VK_QUEUE_FAMILY_IGNORED, VK_QUEUE_GRAPHICS_BIT, VK_QUEUE_SPARSE_BINDING_BIT, VK_QUEUE_TRANSFER_BIT, VK_REMAINING_ARRAY_LAYERS, VK_REMAINING_MIP_LEVELS, VK_SAMPLE_COUNT_1_BIT, VK_SAMPLE_COUNT_16_BIT, VK_SAMPLE_COUNT_2_BIT, VK_SAMPLE_COUNT_32_BIT, VK_SAMPLE_COUNT_4_BIT, VK_SAMPLE_COUNT_64_BIT, VK_SAMPLE_COUNT_8_BIT, VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER, VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE, VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT, VK_SAMPLER_ADDRESS_MODE_REPEAT, VK_SAMPLER_MIPMAP_MODE_LINEAR, VK_SAMPLER_MIPMAP_MODE_NEAREST, VK_SHADER_STAGE_ALL, VK_SHADER_STAGE_ALL_GRAPHICS, VK_SHADER_STAGE_COMPUTE_BIT, VK_SHADER_STAGE_FRAGMENT_BIT, VK_SHADER_STAGE_GEOMETRY_BIT, VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, VK_SHADER_STAGE_VERTEX_BIT, VK_SHARING_MODE_CONCURRENT, VK_SHARING_MODE_EXCLUSIVE, VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT, VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT, VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, VK_SPARSE_MEMORY_BIND_METADATA_BIT, VK_STENCIL_FACE_BACK_BIT, VK_STENCIL_FACE_FRONT_AND_BACK, VK_STENCIL_FACE_FRONT_BIT, VK_STENCIL_FRONT_AND_BACK, VK_STENCIL_OP_DECREMENT_AND_CLAMP, VK_STENCIL_OP_DECREMENT_AND_WRAP, VK_STENCIL_OP_INCREMENT_AND_CLAMP, VK_STENCIL_OP_INCREMENT_AND_WRAP, VK_STENCIL_OP_INVERT, VK_STENCIL_OP_KEEP, VK_STENCIL_OP_REPLACE, VK_STENCIL_OP_ZERO, VK_STRUCTURE_TYPE_APPLICATION_INFO, VK_STRUCTURE_TYPE_BIND_SPARSE_INFO, VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER, VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO, VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO, VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO, VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO, VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO, VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET, VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO, VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO, VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO, VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO, VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO, VK_STRUCTURE_TYPE_EVENT_CREATE_INFO, VK_STRUCTURE_TYPE_FENCE_CREATE_INFO, VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO, VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO, VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO, VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO, VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO, VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO, VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO, VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE, VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO, VK_STRUCTURE_TYPE_MEMORY_BARRIER, VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO, VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO, VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO, VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO, VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO, VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO, VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO, VK_STRUCTURE_TYPE_SUBMIT_INFO, VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET, VK_SUBPASS_CONTENTS_INLINE, VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS, VK_SUBPASS_EXTERNAL, VK_SUCCESS, VK_SYSTEM_ALLOCATION_SCOPE_CACHE, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND, VK_SYSTEM_ALLOCATION_SCOPE_DEVICE, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT, VK_TIMEOUT, VK_TRUE, VK_UUID_SIZE, VK_VENDOR_ID_KAZAN, VK_VENDOR_ID_VIV, VK_VENDOR_ID_VSI, VK_VERTEX_INPUT_RATE_INSTANCE, VK_VERTEX_INPUT_RATE_VERTEX, VK_WHOLE_SIZE| Modifier and Type | Method and Description |
|---|---|
static int |
nvkBindBufferMemory2(org.lwjgl.vulkan.VkDevice device,
int bindInfoCount,
long pBindInfos)
Unsafe version of:
BindBufferMemory2 |
static int |
nvkBindImageMemory2(org.lwjgl.vulkan.VkDevice device,
int bindInfoCount,
long pBindInfos)
Unsafe version of:
BindImageMemory2 |
static int |
nvkCreateDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
long pCreateInfo,
long pAllocator,
long pDescriptorUpdateTemplate)
Unsafe version of:
CreateDescriptorUpdateTemplate |
static int |
nvkCreateSamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
long pCreateInfo,
long pAllocator,
long pYcbcrConversion)
Unsafe version of:
CreateSamplerYcbcrConversion |
static void |
nvkDestroyDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
long descriptorUpdateTemplate,
long pAllocator)
Unsafe version of:
DestroyDescriptorUpdateTemplate |
static void |
nvkDestroySamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
long ycbcrConversion,
long pAllocator)
Unsafe version of:
DestroySamplerYcbcrConversion |
static int |
nvkEnumerateInstanceVersion(long pApiVersion)
Unsafe version of:
EnumerateInstanceVersion |
static int |
nvkEnumeratePhysicalDeviceGroups(org.lwjgl.vulkan.VkInstance instance,
long pPhysicalDeviceGroupCount,
long pPhysicalDeviceGroupProperties)
Unsafe version of:
EnumeratePhysicalDeviceGroups |
static void |
nvkGetBufferMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
long pInfo,
long pMemoryRequirements)
Unsafe version of:
GetBufferMemoryRequirements2 |
static void |
nvkGetDescriptorSetLayoutSupport(org.lwjgl.vulkan.VkDevice device,
long pCreateInfo,
long pSupport)
Unsafe version of:
GetDescriptorSetLayoutSupport |
static void |
nvkGetDeviceGroupPeerMemoryFeatures(org.lwjgl.vulkan.VkDevice device,
int heapIndex,
int localDeviceIndex,
int remoteDeviceIndex,
long pPeerMemoryFeatures)
Unsafe version of:
GetDeviceGroupPeerMemoryFeatures |
static void |
nvkGetDeviceQueue2(org.lwjgl.vulkan.VkDevice device,
long pQueueInfo,
long pQueue)
Unsafe version of:
GetDeviceQueue2 |
static void |
nvkGetImageMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
long pInfo,
long pMemoryRequirements)
Unsafe version of:
GetImageMemoryRequirements2 |
static void |
nvkGetImageSparseMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
long pInfo,
long pSparseMemoryRequirementCount,
long pSparseMemoryRequirements)
Unsafe version of:
GetImageSparseMemoryRequirements2 |
static void |
nvkGetPhysicalDeviceExternalBufferProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pExternalBufferInfo,
long pExternalBufferProperties)
Unsafe version of:
GetPhysicalDeviceExternalBufferProperties |
static void |
nvkGetPhysicalDeviceExternalFenceProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pExternalFenceInfo,
long pExternalFenceProperties)
Unsafe version of:
GetPhysicalDeviceExternalFenceProperties |
static void |
nvkGetPhysicalDeviceExternalSemaphoreProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pExternalSemaphoreInfo,
long pExternalSemaphoreProperties)
Unsafe version of:
GetPhysicalDeviceExternalSemaphoreProperties |
static void |
nvkGetPhysicalDeviceFeatures2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pFeatures)
Unsafe version of:
GetPhysicalDeviceFeatures2 |
static void |
nvkGetPhysicalDeviceFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
int format,
long pFormatProperties)
Unsafe version of:
GetPhysicalDeviceFormatProperties2 |
static int |
nvkGetPhysicalDeviceImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pImageFormatInfo,
long pImageFormatProperties)
Unsafe version of:
GetPhysicalDeviceImageFormatProperties2 |
static void |
nvkGetPhysicalDeviceMemoryProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pMemoryProperties)
Unsafe version of:
GetPhysicalDeviceMemoryProperties2 |
static void |
nvkGetPhysicalDeviceProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pProperties)
Unsafe version of:
GetPhysicalDeviceProperties2 |
static void |
nvkGetPhysicalDeviceQueueFamilyProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pQueueFamilyPropertyCount,
long pQueueFamilyProperties)
Unsafe version of:
GetPhysicalDeviceQueueFamilyProperties2 |
static void |
nvkGetPhysicalDeviceSparseImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pFormatInfo,
long pPropertyCount,
long pProperties)
Unsafe version of:
GetPhysicalDeviceSparseImageFormatProperties2 |
static int |
vkBindBufferMemory2(org.lwjgl.vulkan.VkDevice device,
VkBindBufferMemoryInfo.Buffer pBindInfos)
Bind device memory to buffer objects.
|
static int |
vkBindImageMemory2(org.lwjgl.vulkan.VkDevice device,
VkBindImageMemoryInfo.Buffer pBindInfos)
Bind device memory to image objects.
|
static void |
vkCmdDispatchBase(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int baseGroupX,
int baseGroupY,
int baseGroupZ,
int groupCountX,
int groupCountY,
int groupCountZ)
Dispatch compute work items.
|
static void |
vkCmdSetDeviceMask(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int deviceMask)
Modify device mask of a command buffer.
|
static int |
vkCreateDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
VkDescriptorUpdateTemplateCreateInfo pCreateInfo,
VkAllocationCallbacks pAllocator,
long[] pDescriptorUpdateTemplate)
Array version of:
CreateDescriptorUpdateTemplate |
static int |
vkCreateDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
VkDescriptorUpdateTemplateCreateInfo pCreateInfo,
VkAllocationCallbacks pAllocator,
java.nio.LongBuffer pDescriptorUpdateTemplate)
Create a new descriptor update template.
|
static int |
vkCreateSamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
VkSamplerYcbcrConversionCreateInfo pCreateInfo,
VkAllocationCallbacks pAllocator,
long[] pYcbcrConversion)
Array version of:
CreateSamplerYcbcrConversion |
static int |
vkCreateSamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
VkSamplerYcbcrConversionCreateInfo pCreateInfo,
VkAllocationCallbacks pAllocator,
java.nio.LongBuffer pYcbcrConversion)
Create a new Ycbcr conversion.
|
static void |
vkDestroyDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
long descriptorUpdateTemplate,
VkAllocationCallbacks pAllocator)
Destroy a descriptor update template object.
|
static void |
vkDestroySamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
long ycbcrConversion,
VkAllocationCallbacks pAllocator)
Destroy a created Y'CbCr conversion.
|
static int |
vkEnumerateInstanceVersion(int[] pApiVersion)
Array version of:
EnumerateInstanceVersion |
static int |
vkEnumerateInstanceVersion(java.nio.IntBuffer pApiVersion)
Query instance-level version before instance creation.
|
static int |
vkEnumeratePhysicalDeviceGroups(org.lwjgl.vulkan.VkInstance instance,
int[] pPhysicalDeviceGroupCount,
VkPhysicalDeviceGroupProperties.Buffer pPhysicalDeviceGroupProperties)
Array version of:
EnumeratePhysicalDeviceGroups |
static int |
vkEnumeratePhysicalDeviceGroups(org.lwjgl.vulkan.VkInstance instance,
java.nio.IntBuffer pPhysicalDeviceGroupCount,
VkPhysicalDeviceGroupProperties.Buffer pPhysicalDeviceGroupProperties)
Enumerates groups of physical devices that can be used to create a single logical device.
|
static void |
vkGetBufferMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkBufferMemoryRequirementsInfo2 pInfo,
VkMemoryRequirements2 pMemoryRequirements)
Returns the memory requirements for specified Vulkan object.
|
static void |
vkGetDescriptorSetLayoutSupport(org.lwjgl.vulkan.VkDevice device,
VkDescriptorSetLayoutCreateInfo pCreateInfo,
VkDescriptorSetLayoutSupport pSupport)
Query whether a descriptor set layout can be created.
|
static void |
vkGetDeviceGroupPeerMemoryFeatures(org.lwjgl.vulkan.VkDevice device,
int heapIndex,
int localDeviceIndex,
int remoteDeviceIndex,
int[] pPeerMemoryFeatures)
Array version of:
GetDeviceGroupPeerMemoryFeatures |
static void |
vkGetDeviceGroupPeerMemoryFeatures(org.lwjgl.vulkan.VkDevice device,
int heapIndex,
int localDeviceIndex,
int remoteDeviceIndex,
java.nio.IntBuffer pPeerMemoryFeatures)
Query supported peer memory features of a device.
|
static void |
vkGetDeviceQueue2(org.lwjgl.vulkan.VkDevice device,
VkDeviceQueueInfo2 pQueueInfo,
org.lwjgl.PointerBuffer pQueue)
Get a queue handle from a device.
|
static void |
vkGetImageMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkImageMemoryRequirementsInfo2 pInfo,
VkMemoryRequirements2 pMemoryRequirements)
Returns the memory requirements for specified Vulkan object.
|
static void |
vkGetImageSparseMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkImageSparseMemoryRequirementsInfo2 pInfo,
int[] pSparseMemoryRequirementCount,
VkSparseImageMemoryRequirements2.Buffer pSparseMemoryRequirements)
Array version of:
GetImageSparseMemoryRequirements2 |
static void |
vkGetImageSparseMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkImageSparseMemoryRequirementsInfo2 pInfo,
java.nio.IntBuffer pSparseMemoryRequirementCount,
VkSparseImageMemoryRequirements2.Buffer pSparseMemoryRequirements)
Query the memory requirements for a sparse image.
|
static void |
vkGetPhysicalDeviceExternalBufferProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExternalBufferInfo pExternalBufferInfo,
VkExternalBufferProperties pExternalBufferProperties)
Query external handle types supported by buffers.
|
static void |
vkGetPhysicalDeviceExternalFenceProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExternalFenceInfo pExternalFenceInfo,
VkExternalFenceProperties pExternalFenceProperties)
Function for querying external fence handle capabilities.
|
static void |
vkGetPhysicalDeviceExternalSemaphoreProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExternalSemaphoreInfo pExternalSemaphoreInfo,
VkExternalSemaphoreProperties pExternalSemaphoreProperties)
Function for querying external semaphore handle capabilities.
|
static void |
vkGetPhysicalDeviceFeatures2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceFeatures2 pFeatures)
Reports capabilities of a physical device.
|
static void |
vkGetPhysicalDeviceFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
int format,
VkFormatProperties2 pFormatProperties)
Lists physical device's format capabilities.
|
static int |
vkGetPhysicalDeviceImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceImageFormatInfo2 pImageFormatInfo,
VkImageFormatProperties2 pImageFormatProperties)
Lists physical device's image format capabilities.
|
static void |
vkGetPhysicalDeviceMemoryProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceMemoryProperties2 pMemoryProperties)
Reports memory information for the specified physical device.
|
static void |
vkGetPhysicalDeviceProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceProperties2 pProperties)
Returns properties of a physical device.
|
static void |
vkGetPhysicalDeviceQueueFamilyProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
int[] pQueueFamilyPropertyCount,
VkQueueFamilyProperties2.Buffer pQueueFamilyProperties)
Array version of:
GetPhysicalDeviceQueueFamilyProperties2 |
static void |
vkGetPhysicalDeviceQueueFamilyProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
java.nio.IntBuffer pQueueFamilyPropertyCount,
VkQueueFamilyProperties2.Buffer pQueueFamilyProperties)
Reports properties of the queues of the specified physical device.
|
static void |
vkGetPhysicalDeviceSparseImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceSparseImageFormatInfo2 pFormatInfo,
int[] pPropertyCount,
VkSparseImageFormatProperties2.Buffer pProperties)
Array version of:
GetPhysicalDeviceSparseImageFormatProperties2 |
static void |
vkGetPhysicalDeviceSparseImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceSparseImageFormatInfo2 pFormatInfo,
java.nio.IntBuffer pPropertyCount,
VkSparseImageFormatProperties2.Buffer pProperties)
Retrieve properties of an image format applied to sparse images.
|
static void |
vkTrimCommandPool(org.lwjgl.vulkan.VkDevice device,
long commandPool,
int flags)
Trim a command pool.
|
static void |
vkUpdateDescriptorSetWithTemplate(org.lwjgl.vulkan.VkDevice device,
long descriptorSet,
long descriptorUpdateTemplate,
long pData)
Update the contents of a descriptor set object using an update template.
|
nvkAllocateCommandBuffers, nvkAllocateDescriptorSets, nvkAllocateMemory, nvkBeginCommandBuffer, nvkCmdBeginRenderPass, nvkCmdBindDescriptorSets, nvkCmdBindVertexBuffers, nvkCmdBlitImage, nvkCmdClearAttachments, nvkCmdClearColorImage, nvkCmdClearDepthStencilImage, nvkCmdCopyBuffer, nvkCmdCopyBufferToImage, nvkCmdCopyImage, nvkCmdCopyImageToBuffer, nvkCmdExecuteCommands, nvkCmdPipelineBarrier, nvkCmdPushConstants, nvkCmdResolveImage, nvkCmdSetBlendConstants, nvkCmdSetScissor, nvkCmdSetViewport, nvkCmdUpdateBuffer, nvkCmdWaitEvents, nvkCreateBuffer, nvkCreateBufferView, nvkCreateCommandPool, nvkCreateComputePipelines, nvkCreateDescriptorPool, nvkCreateDescriptorSetLayout, nvkCreateDevice, nvkCreateEvent, nvkCreateFence, nvkCreateFramebuffer, nvkCreateGraphicsPipelines, nvkCreateImage, nvkCreateImageView, nvkCreateInstance, nvkCreatePipelineCache, nvkCreatePipelineLayout, nvkCreateQueryPool, nvkCreateRenderPass, nvkCreateSampler, nvkCreateSemaphore, nvkCreateShaderModule, nvkDestroyBuffer, nvkDestroyBufferView, nvkDestroyCommandPool, nvkDestroyDescriptorPool, nvkDestroyDescriptorSetLayout, nvkDestroyDevice, nvkDestroyEvent, nvkDestroyFence, nvkDestroyFramebuffer, nvkDestroyImage, nvkDestroyImageView, nvkDestroyInstance, nvkDestroyPipeline, nvkDestroyPipelineCache, nvkDestroyPipelineLayout, nvkDestroyQueryPool, nvkDestroyRenderPass, nvkDestroySampler, nvkDestroySemaphore, nvkDestroyShaderModule, nvkEnumerateDeviceExtensionProperties, nvkEnumerateDeviceLayerProperties, nvkEnumerateInstanceExtensionProperties, nvkEnumerateInstanceLayerProperties, nvkEnumeratePhysicalDevices, nvkFlushMappedMemoryRanges, nvkFreeCommandBuffers, nvkFreeDescriptorSets, nvkFreeMemory, nvkGetBufferMemoryRequirements, nvkGetDeviceMemoryCommitment, nvkGetDeviceProcAddr, nvkGetDeviceQueue, nvkGetImageMemoryRequirements, nvkGetImageSparseMemoryRequirements, nvkGetImageSubresourceLayout, nvkGetInstanceProcAddr, nvkGetPhysicalDeviceFeatures, nvkGetPhysicalDeviceFormatProperties, nvkGetPhysicalDeviceImageFormatProperties, nvkGetPhysicalDeviceMemoryProperties, nvkGetPhysicalDeviceProperties, nvkGetPhysicalDeviceQueueFamilyProperties, nvkGetPhysicalDeviceSparseImageFormatProperties, nvkGetPipelineCacheData, nvkGetQueryPoolResults, nvkGetRenderAreaGranularity, nvkInvalidateMappedMemoryRanges, nvkMapMemory, nvkMergePipelineCaches, nvkQueueBindSparse, nvkQueueSubmit, nvkResetFences, nvkUpdateDescriptorSets, nvkWaitForFences, VK_MAKE_VERSION, VK_VERSION_MAJOR, VK_VERSION_MINOR, VK_VERSION_PATCH, vkAllocateCommandBuffers, vkAllocateDescriptorSets, vkAllocateDescriptorSets, vkAllocateMemory, vkAllocateMemory, vkBeginCommandBuffer, vkBindBufferMemory, vkBindImageMemory, vkCmdBeginQuery, vkCmdBeginRenderPass, vkCmdBindDescriptorSets, vkCmdBindDescriptorSets, vkCmdBindIndexBuffer, vkCmdBindPipeline, vkCmdBindVertexBuffers, vkCmdBindVertexBuffers, vkCmdBlitImage, vkCmdClearAttachments, vkCmdClearColorImage, vkCmdClearColorImage, vkCmdClearDepthStencilImage, vkCmdClearDepthStencilImage, vkCmdCopyBuffer, vkCmdCopyBufferToImage, vkCmdCopyImage, vkCmdCopyImageToBuffer, vkCmdCopyQueryPoolResults, vkCmdDispatch, vkCmdDispatchIndirect, vkCmdDraw, vkCmdDrawIndexed, vkCmdDrawIndexedIndirect, vkCmdDrawIndirect, vkCmdEndQuery, vkCmdEndRenderPass, vkCmdExecuteCommands, vkCmdExecuteCommands, vkCmdFillBuffer, vkCmdNextSubpass, vkCmdPipelineBarrier, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdPushConstants, vkCmdResetEvent, vkCmdResetQueryPool, vkCmdResolveImage, vkCmdResolveImage, vkCmdSetBlendConstants, vkCmdSetBlendConstants, vkCmdSetDepthBias, vkCmdSetDepthBounds, vkCmdSetEvent, vkCmdSetLineWidth, vkCmdSetScissor, vkCmdSetStencilCompareMask, vkCmdSetStencilReference, vkCmdSetStencilWriteMask, vkCmdSetViewport, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdUpdateBuffer, vkCmdWaitEvents, vkCmdWaitEvents, vkCmdWriteTimestamp, vkCreateBuffer, vkCreateBuffer, vkCreateBufferView, vkCreateBufferView, vkCreateCommandPool, vkCreateCommandPool, vkCreateComputePipelines, vkCreateComputePipelines, vkCreateDescriptorPool, vkCreateDescriptorPool, vkCreateDescriptorSetLayout, vkCreateDescriptorSetLayout, vkCreateDevice, vkCreateEvent, vkCreateEvent, vkCreateFence, vkCreateFence, vkCreateFramebuffer, vkCreateFramebuffer, vkCreateGraphicsPipelines, vkCreateGraphicsPipelines, vkCreateImage, vkCreateImage, vkCreateImageView, vkCreateImageView, vkCreateInstance, vkCreatePipelineCache, vkCreatePipelineCache, vkCreatePipelineLayout, vkCreatePipelineLayout, vkCreateQueryPool, vkCreateQueryPool, vkCreateRenderPass, vkCreateRenderPass, vkCreateSampler, vkCreateSampler, vkCreateSemaphore, vkCreateSemaphore, vkCreateShaderModule, vkCreateShaderModule, vkDestroyBuffer, vkDestroyBufferView, vkDestroyCommandPool, vkDestroyDescriptorPool, vkDestroyDescriptorSetLayout, vkDestroyDevice, vkDestroyEvent, vkDestroyFence, vkDestroyFramebuffer, vkDestroyImage, vkDestroyImageView, vkDestroyInstance, vkDestroyPipeline, vkDestroyPipelineCache, vkDestroyPipelineLayout, vkDestroyQueryPool, vkDestroyRenderPass, vkDestroySampler, vkDestroySemaphore, vkDestroyShaderModule, vkDeviceWaitIdle, vkEndCommandBuffer, vkEnumerateDeviceExtensionProperties, vkEnumerateDeviceExtensionProperties, vkEnumerateDeviceExtensionProperties, vkEnumerateDeviceExtensionProperties, vkEnumerateDeviceLayerProperties, vkEnumerateDeviceLayerProperties, vkEnumerateInstanceExtensionProperties, vkEnumerateInstanceExtensionProperties, vkEnumerateInstanceExtensionProperties, vkEnumerateInstanceExtensionProperties, vkEnumerateInstanceLayerProperties, vkEnumerateInstanceLayerProperties, vkEnumeratePhysicalDevices, vkEnumeratePhysicalDevices, vkFlushMappedMemoryRanges, vkFlushMappedMemoryRanges, vkFreeCommandBuffers, vkFreeCommandBuffers, vkFreeDescriptorSets, vkFreeDescriptorSets, vkFreeDescriptorSets, vkFreeMemory, vkGetBufferMemoryRequirements, vkGetDeviceMemoryCommitment, vkGetDeviceMemoryCommitment, vkGetDeviceProcAddr, vkGetDeviceProcAddr, vkGetDeviceQueue, vkGetEventStatus, vkGetFenceStatus, vkGetImageMemoryRequirements, vkGetImageSparseMemoryRequirements, vkGetImageSparseMemoryRequirements, vkGetImageSubresourceLayout, vkGetInstanceProcAddr, vkGetInstanceProcAddr, vkGetPhysicalDeviceFeatures, vkGetPhysicalDeviceFormatProperties, vkGetPhysicalDeviceImageFormatProperties, vkGetPhysicalDeviceMemoryProperties, vkGetPhysicalDeviceProperties, vkGetPhysicalDeviceQueueFamilyProperties, vkGetPhysicalDeviceQueueFamilyProperties, vkGetPhysicalDeviceSparseImageFormatProperties, vkGetPhysicalDeviceSparseImageFormatProperties, vkGetPipelineCacheData, vkGetQueryPoolResults, vkGetQueryPoolResults, vkGetQueryPoolResults, vkGetQueryPoolResults, vkGetQueryPoolResults, vkGetRenderAreaGranularity, vkInvalidateMappedMemoryRanges, vkInvalidateMappedMemoryRanges, vkMapMemory, vkMergePipelineCaches, vkMergePipelineCaches, vkQueueBindSparse, vkQueueBindSparse, vkQueueSubmit, vkQueueSubmit, vkQueueWaitIdle, vkResetCommandBuffer, vkResetCommandPool, vkResetDescriptorPool, vkResetEvent, vkResetFences, vkResetFences, vkResetFences, vkSetEvent, vkUnmapMemory, vkUpdateDescriptorSets, vkWaitForFences, vkWaitForFences, vkWaitForFencespublic static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES
VkStructureType.public static final int VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO
VkStructureType.
public static final int VK_IMAGE_CREATE_ALIAS_BIT
VkImageCreateFlagBits.public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES
VkStructureType.public static final int VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS
VkStructureType.
public static final int VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO
VkStructureType.
public static final int VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT
VkPipelineCreateFlagBits.
public static final int VK_PIPELINE_CREATE_DISPATCH_BASE_BIT
VkPipelineCreateFlagBits.
public static final int VK_PIPELINE_CREATE_DISPATCH_BASE
VkPipelineCreateFlagBits.
public static final int VK_DEPENDENCY_DEVICE_GROUP_BIT
VkDependencyFlagBits.public static final int VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO
VkStructureType.
public static final int VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT
VkImageCreateFlagBits.public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO
VkStructureType.
public static final int VK_MEMORY_HEAP_MULTI_INSTANCE_BIT
VkMemoryHeapFlagBits.public static final int VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2
VkStructureType.
public static final int VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2
VkStructureType.
public static final int VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2
VkStructureType.
public static final int VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2
VkStructureType.
public static final int VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2STRUCTURE_TYPE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2public static final int VK_ERROR_OUT_OF_POOL_MEMORY
VkResult.public static final int VK_FORMAT_FEATURE_TRANSFER_SRC_BIT
VkFormatFeatureFlagBits.
public static final int VK_FORMAT_FEATURE_TRANSFER_DST_BIT
VkFormatFeatureFlagBits.
public static final int VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT
VkImageCreateFlagBits.public static final int VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT
VkImageCreateFlagBits.
public static final int VK_IMAGE_CREATE_EXTENDED_USAGE_BIT
VkImageCreateFlagBits.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO
VkStructureType.
public static final int VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
VkImageLayout.
public static final int VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
VkImageLayout.
public static final int VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES
VkStructureType.
public static final int VK_DEPENDENCY_VIEW_LOCAL_BIT
VkDependencyFlagBits.public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2
VkStructureType.
public static final int VK_QUEUE_PROTECTED_BIT
VkQueueFlagBits.public static final int VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT
VkDeviceQueueCreateFlagBits.public static final int VK_MEMORY_PROPERTY_PROTECTED_BIT
VkMemoryPropertyFlagBits.public static final int VK_BUFFER_CREATE_PROTECTED_BIT
VkBufferCreateFlagBits.public static final int VK_IMAGE_CREATE_PROTECTED_BIT
VkImageCreateFlagBits.public static final int VK_COMMAND_POOL_CREATE_PROTECTED_BIT
VkCommandPoolCreateFlagBits.public static final int VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO
VkStructureType.
STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOSTRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOSTRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOSTRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESpublic static final int VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO
VkStructureType.
STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOSTRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOSTRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOSTRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESpublic static final int VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO
VkStructureType.
STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOSTRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOSTRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOSTRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESpublic static final int VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO
VkStructureType.
STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOSTRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOSTRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOSTRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESpublic static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES
VkStructureType.
STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOSTRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOSTRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOSTRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESpublic static final int VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES
VkStructureType.
STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFOSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFOSTRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFOSTRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFOSTRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURESSTRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIESpublic static final int VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION
VkObjectType.public static final int VK_FORMAT_G8B8G8R8_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_B8G8R8G8_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G8_B8R8_2PLANE_420_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G8_B8R8_2PLANE_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_R10X6_UNORM_PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_R10X6G10X6_UNORM_2PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_R12X4_UNORM_PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_R12X4G12X4_UNORM_2PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G16B16G16R16_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_B16G16R16G16_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G16_B16R16_2PLANE_420_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G16_B16R16_2PLANE_422_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM
VkFormat.
FORMAT_G8B8G8R8_422_UNORMFORMAT_B8G8R8G8_422_UNORMFORMAT_G8_B8_R8_3PLANE_420_UNORMFORMAT_G8_B8R8_2PLANE_420_UNORMFORMAT_G8_B8_R8_3PLANE_422_UNORMFORMAT_G8_B8R8_2PLANE_422_UNORMFORMAT_G8_B8_R8_3PLANE_444_UNORMFORMAT_R10X6_UNORM_PACK16FORMAT_R10X6G10X6_UNORM_2PACK16FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16FORMAT_R12X4_UNORM_PACK16FORMAT_R12X4G12X4_UNORM_2PACK16FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16FORMAT_G16B16G16R16_422_UNORMFORMAT_B16G16R16G16_422_UNORMFORMAT_G16_B16_R16_3PLANE_420_UNORMFORMAT_G16_B16R16_2PLANE_420_UNORMFORMAT_G16_B16_R16_3PLANE_422_UNORMFORMAT_G16_B16R16_2PLANE_422_UNORMFORMAT_G16_B16_R16_3PLANE_444_UNORMpublic static final int VK_IMAGE_ASPECT_PLANE_0_BIT
VkImageAspectFlagBits.
public static final int VK_IMAGE_ASPECT_PLANE_1_BIT
VkImageAspectFlagBits.
public static final int VK_IMAGE_ASPECT_PLANE_2_BIT
VkImageAspectFlagBits.
public static final int VK_IMAGE_CREATE_DISJOINT_BIT
VkImageCreateFlagBits.public static final int VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_FORMAT_FEATURE_DISJOINT_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT
VkFormatFeatureFlagBits.
FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BITFORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BITFORMAT_FEATURE_DISJOINT_BITFORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BITpublic static final int VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO
VkStructureType.public static final int VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE
VkObjectType.public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO
VkStructureType.
public static final int VK_ERROR_INVALID_EXTERNAL_HANDLE
VkResult.public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO
VkStructureType.public static final int VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO
VkStructureType.public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO
VkStructureType.
public static final int VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES
VkStructureType.
public static final int VK_SUBGROUP_FEATURE_BASIC_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_VOTE_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_ARITHMETIC_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_BALLOT_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_SHUFFLE_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_CLUSTERED_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_SUBGROUP_FEATURE_QUAD_BIT
SUBGROUP_FEATURE_BASIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniform capability.SUBGROUP_FEATURE_VOTE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformVote capability.SUBGROUP_FEATURE_ARITHMETIC_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformArithmetic capability.SUBGROUP_FEATURE_BALLOT_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformBallot capability.SUBGROUP_FEATURE_SHUFFLE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffle capability.SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformShuffleRelative capability.SUBGROUP_FEATURE_CLUSTERED_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformClustered capability.SUBGROUP_FEATURE_QUAD_BIT specifies the device will accept SPIR-V shader modules containing the GroupNonUniformQuad capability.SUBGROUP_FEATURE_PARTITIONED_BIT_NV specifies the device will accept SPIR-V shader modules containing the GroupNonUniformPartitionedNV capability.VkSubgroupFeatureFlags
public static final int VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT
PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory can be accessed as the source of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory can be accessed as the destination of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory can be read as any memory access type.PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory can be written as any memory access type. Shader atomics are considered to be writes.The peer memory features of a memory heap also apply to any accesses that may be performed during image layout transitions.
PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for all host local heaps and for at least one device local heap.
If a device does not support a peer memory feature, it is still valid to use a resource that includes both local and peer memory bindings with the corresponding access type as long as only the local bindings are actually accessed. For example, an application doing split-frame rendering would use framebuffer attachments that include both local and peer memory bindings, but would scissor the rendering to only update local memory.
VkPeerMemoryFeatureFlags
public static final int VK_PEER_MEMORY_FEATURE_COPY_DST_BIT
PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory can be accessed as the source of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory can be accessed as the destination of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory can be read as any memory access type.PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory can be written as any memory access type. Shader atomics are considered to be writes.The peer memory features of a memory heap also apply to any accesses that may be performed during image layout transitions.
PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for all host local heaps and for at least one device local heap.
If a device does not support a peer memory feature, it is still valid to use a resource that includes both local and peer memory bindings with the corresponding access type as long as only the local bindings are actually accessed. For example, an application doing split-frame rendering would use framebuffer attachments that include both local and peer memory bindings, but would scissor the rendering to only update local memory.
VkPeerMemoryFeatureFlags
public static final int VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT
PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory can be accessed as the source of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory can be accessed as the destination of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory can be read as any memory access type.PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory can be written as any memory access type. Shader atomics are considered to be writes.The peer memory features of a memory heap also apply to any accesses that may be performed during image layout transitions.
PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for all host local heaps and for at least one device local heap.
If a device does not support a peer memory feature, it is still valid to use a resource that includes both local and peer memory bindings with the corresponding access type as long as only the local bindings are actually accessed. For example, an application doing split-frame rendering would use framebuffer attachments that include both local and peer memory bindings, but would scissor the rendering to only update local memory.
VkPeerMemoryFeatureFlags
public static final int VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT
PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory can be accessed as the source of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory can be accessed as the destination of a CmdCopyBuffer, CmdCopyImage, CmdCopyBufferToImage, or CmdCopyImageToBuffer command.PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory can be read as any memory access type.PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory can be written as any memory access type. Shader atomics are considered to be writes.The peer memory features of a memory heap also apply to any accesses that may be performed during image layout transitions.
PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for all host local heaps and for at least one device local heap.
If a device does not support a peer memory feature, it is still valid to use a resource that includes both local and peer memory bindings with the corresponding access type as long as only the local bindings are actually accessed. For example, an application doing split-frame rendering would use framebuffer attachments that include both local and peer memory bindings, but would scissor the rendering to only update local memory.
VkPeerMemoryFeatureFlags
public static final int VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT
MEMORY_ALLOCATE_DEVICE_MASK_BIT specifies that memory will be allocated for the devices in VkMemoryAllocateFlagsInfo::deviceMask.MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR specifies that the memory can be attached to a buffer object created with the BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR bit set in usage, and that the memory handle can be used to retrieve an opaque address via GetDeviceMemoryOpaqueCaptureAddressKHR.MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR specifies that the memory’s address can be saved and reused on a subsequent run (e.g. for trace capture and replay), see VkBufferOpaqueCaptureAddressCreateInfoKHR for more detail.VkMemoryAllocateFlags
public static final int VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES specifies that the primitive is discarded if the vertex lies outside any clip plane, including the planes bounding the view volume.POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY specifies that the primitive is discarded only if the vertex lies outside any user clip plane.public static final int VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES specifies that the primitive is discarded if the vertex lies outside any clip plane, including the planes bounding the view volume.POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY specifies that the primitive is discarded only if the vertex lies outside any user clip plane.public static final int VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT
TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT specifies that the origin of the domain space is in the upper left corner, as shown in figure Domain parameterization for tessellation primitive modes (upper-left origin).TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT specifies that the origin of the domain space is in the lower left corner, as shown in figure Domain parameterization for tessellation primitive modes (lower-left origin).This enum affects how the VertexOrderCw and VertexOrderCcw tessellation execution modes are interpreted, since the winding is defined relative to the orientation of the domain.
public static final int VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT
TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT specifies that the origin of the domain space is in the upper left corner, as shown in figure Domain parameterization for tessellation primitive modes (upper-left origin).TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT specifies that the origin of the domain space is in the lower left corner, as shown in figure Domain parameterization for tessellation primitive modes (lower-left origin).This enum affects how the VertexOrderCw and VertexOrderCcw tessellation execution modes are interpreted, since the winding is defined relative to the orientation of the domain.
public static final int VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY
SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY specifies that the input values to the conversion are unmodified.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY specifies no model conversion but the inputs are range expanded as for Y’CBCR.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.709 and described in the “BT.709 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.601 and described in the “BT.601 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.2020 and described in the “BT.2020 Y’CBCR conversion” section of the Khronos Data Format Specification.In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color models, for the input to the sampler Y'CBCR range expansion and model conversion:
These rules reflect the mapping of channels after the channel swizzle operation (controlled by VkSamplerYcbcrConversionCreateInfo::components).
For example, an "YUVA" 32-bit format comprising four 8-bit channels can be implemented as FORMAT_R8G8B8A8_UNORM with a component mapping:
components.a = COMPONENT_SWIZZLE_IDENTITYcomponents.r = COMPONENT_SWIZZLE_Bcomponents.g = COMPONENT_SWIZZLE_Rcomponents.b = COMPONENT_SWIZZLE_Gpublic static final int VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY
SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY specifies that the input values to the conversion are unmodified.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY specifies no model conversion but the inputs are range expanded as for Y’CBCR.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.709 and described in the “BT.709 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.601 and described in the “BT.601 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.2020 and described in the “BT.2020 Y’CBCR conversion” section of the Khronos Data Format Specification.In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color models, for the input to the sampler Y'CBCR range expansion and model conversion:
These rules reflect the mapping of channels after the channel swizzle operation (controlled by VkSamplerYcbcrConversionCreateInfo::components).
For example, an "YUVA" 32-bit format comprising four 8-bit channels can be implemented as FORMAT_R8G8B8A8_UNORM with a component mapping:
components.a = COMPONENT_SWIZZLE_IDENTITYcomponents.r = COMPONENT_SWIZZLE_Bcomponents.g = COMPONENT_SWIZZLE_Rcomponents.b = COMPONENT_SWIZZLE_Gpublic static final int VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709
SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY specifies that the input values to the conversion are unmodified.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY specifies no model conversion but the inputs are range expanded as for Y’CBCR.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.709 and described in the “BT.709 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.601 and described in the “BT.601 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.2020 and described in the “BT.2020 Y’CBCR conversion” section of the Khronos Data Format Specification.In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color models, for the input to the sampler Y'CBCR range expansion and model conversion:
These rules reflect the mapping of channels after the channel swizzle operation (controlled by VkSamplerYcbcrConversionCreateInfo::components).
For example, an "YUVA" 32-bit format comprising four 8-bit channels can be implemented as FORMAT_R8G8B8A8_UNORM with a component mapping:
components.a = COMPONENT_SWIZZLE_IDENTITYcomponents.r = COMPONENT_SWIZZLE_Bcomponents.g = COMPONENT_SWIZZLE_Rcomponents.b = COMPONENT_SWIZZLE_Gpublic static final int VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601
SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY specifies that the input values to the conversion are unmodified.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY specifies no model conversion but the inputs are range expanded as for Y’CBCR.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.709 and described in the “BT.709 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.601 and described in the “BT.601 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.2020 and described in the “BT.2020 Y’CBCR conversion” section of the Khronos Data Format Specification.In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color models, for the input to the sampler Y'CBCR range expansion and model conversion:
These rules reflect the mapping of channels after the channel swizzle operation (controlled by VkSamplerYcbcrConversionCreateInfo::components).
For example, an "YUVA" 32-bit format comprising four 8-bit channels can be implemented as FORMAT_R8G8B8A8_UNORM with a component mapping:
components.a = COMPONENT_SWIZZLE_IDENTITYcomponents.r = COMPONENT_SWIZZLE_Bcomponents.g = COMPONENT_SWIZZLE_Rcomponents.b = COMPONENT_SWIZZLE_Gpublic static final int VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020
SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY specifies that the input values to the conversion are unmodified.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY specifies no model conversion but the inputs are range expanded as for Y’CBCR.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.709 and described in the “BT.709 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.601 and described in the “BT.601 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 specifies the color model conversion from Y’CBCR to R’G’B' defined in BT.2020 and described in the “BT.2020 Y’CBCR conversion” section of the Khronos Data Format Specification.In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_* color models, for the input to the sampler Y'CBCR range expansion and model conversion:
These rules reflect the mapping of channels after the channel swizzle operation (controlled by VkSamplerYcbcrConversionCreateInfo::components).
For example, an "YUVA" 32-bit format comprising four 8-bit channels can be implemented as FORMAT_R8G8B8A8_UNORM with a component mapping:
components.a = COMPONENT_SWIZZLE_IDENTITYcomponents.r = COMPONENT_SWIZZLE_Bcomponents.g = COMPONENT_SWIZZLE_Rcomponents.b = COMPONENT_SWIZZLE_Gpublic static final int VK_SAMPLER_YCBCR_RANGE_ITU_FULL
SAMPLER_YCBCR_RANGE_ITU_FULL specifies that the full range of the encoded values are valid and interpreted according to the ITU “full range” quantization rules.SAMPLER_YCBCR_RANGE_ITU_NARROW specifies that headroom and foot room are reserved in the numerical range of encoded values, and the remaining values are expanded according to the ITU “narrow range” quantization rules.The formulae for these conversions is described in the Sampler Y'CBCR Range Expansion section of the Image Operations chapter.
No range modification takes place if ycbcrModel is SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY; the ycbcrRange field of VkSamplerYcbcrConversionCreateInfo is ignored in this case.
public static final int VK_SAMPLER_YCBCR_RANGE_ITU_NARROW
SAMPLER_YCBCR_RANGE_ITU_FULL specifies that the full range of the encoded values are valid and interpreted according to the ITU “full range” quantization rules.SAMPLER_YCBCR_RANGE_ITU_NARROW specifies that headroom and foot room are reserved in the numerical range of encoded values, and the remaining values are expanded according to the ITU “narrow range” quantization rules.The formulae for these conversions is described in the Sampler Y'CBCR Range Expansion section of the Image Operations chapter.
No range modification takes place if ycbcrModel is SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY; the ycbcrRange field of VkSamplerYcbcrConversionCreateInfo is ignored in this case.
public static final int VK_CHROMA_LOCATION_COSITED_EVEN
CHROMA_LOCATION_COSITED_EVEN specifies that downsampled chroma samples are aligned with luma samples with even coordinates.CHROMA_LOCATION_MIDPOINT specifies that downsampled chroma samples are located half way between each even luma sample and the nearest higher odd luma sample.public static final int VK_CHROMA_LOCATION_MIDPOINT
CHROMA_LOCATION_COSITED_EVEN specifies that downsampled chroma samples are aligned with luma samples with even coordinates.CHROMA_LOCATION_MIDPOINT specifies that downsampled chroma samples are located half way between each even luma sample and the nearest higher odd luma sample.public static final int VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET
DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET specifies that the descriptor update template will be used for descriptor set updates only.DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR specifies that the descriptor update template will be used for push descriptor updates only.public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying memory resource represented by its Vulkan memory object.EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying memory resource represented its Vulkan memory object, and will therefore become invalid when all Vulkan memory objects associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT specifies an NT handle returned by IDXGIResource1::CreateSharedHandle referring to a Direct3D 10 or 11 texture resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT specifies a global share handle returned by IDXGIResource::GetSharedHandle referring to a Direct3D 10 or 11 texture resource. It does not own a reference to the underlying Direct3D resource, and will therefore become invalid when all Vulkan memory objects and Direct3D resources associated with it are destroyed.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 heap resource. It owns a reference to the resources used by the Direct3D heap.EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 committed resource. It owns a reference to the memory used by the Direct3D resource.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT specifies a host pointer returned by a host memory allocation command. It does not own a reference to the underlying memory resource, and will therefore become invalid if the host memory is freed.EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT specifies a host pointer to host mapped foreign memory. It does not own a reference to the underlying memory resource, and will therefore become invalid if the foreign memory is unmapped or otherwise becomes no longer available.EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT is a file descriptor for a Linux dma_buf. It owns a reference to the underlying memory resource represented by its Vulkan memory object.Some external memory handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT | Must match | Must match |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT | No restriction | No restriction |
EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT | No restriction | No restriction |
The above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT and EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT may be shared, as these handle types inherently mean memory that does not come from the same device, as they import memory from the host or a foreign device, respectively.
Even though the above table does not restrict the drivers and devices with which EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT may be shared, query mechanisms exist in the Vulkan API that prevent the import of incompatible dma-bufs (such as GetMemoryFdPropertiesKHR) and that prevent incompatible usage of dma-bufs (such as VkPhysicalDeviceExternalBufferInfo and VkPhysicalDeviceExternalImageFormatInfo).
VkExternalMemoryHandleTypeFlags, VkImportMemoryFdInfoKHR, VkImportMemoryHostPointerInfoEXT, VkImportMemoryWin32HandleInfoKHR, VkMemoryGetFdInfoKHR, VkMemoryGetWin32HandleInfoKHR, VkPhysicalDeviceExternalBufferInfo, VkPhysicalDeviceExternalImageFormatInfo, GetMemoryFdPropertiesKHR, GetMemoryHostPointerPropertiesEXT, GetMemoryWin32HandlePropertiesKHR
public static final int VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT
EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT specifies that images or buffers created with the specified parameters and handle type must use the mechanisms defined by VkMemoryDedicatedRequirements and VkMemoryDedicatedAllocateInfo to create (or import) a dedicated allocation for the image or buffer.EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT specifies that handles of this type can be exported from Vulkan memory objects.EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT specifies that handles of this type can be imported as Vulkan memory objects.Because their semantics in external APIs roughly align with that of an image or buffer with a dedicated allocation in Vulkan, implementations are required: to report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for the following external handle types:
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BITImplementations must not report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for images or buffers with external handle type EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, or EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT.
VkExternalMemoryFeatureFlags
public static final int VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT
EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT specifies that images or buffers created with the specified parameters and handle type must use the mechanisms defined by VkMemoryDedicatedRequirements and VkMemoryDedicatedAllocateInfo to create (or import) a dedicated allocation for the image or buffer.EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT specifies that handles of this type can be exported from Vulkan memory objects.EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT specifies that handles of this type can be imported as Vulkan memory objects.Because their semantics in external APIs roughly align with that of an image or buffer with a dedicated allocation in Vulkan, implementations are required: to report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for the following external handle types:
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BITImplementations must not report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for images or buffers with external handle type EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, or EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT.
VkExternalMemoryFeatureFlags
public static final int VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT
EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT specifies that images or buffers created with the specified parameters and handle type must use the mechanisms defined by VkMemoryDedicatedRequirements and VkMemoryDedicatedAllocateInfo to create (or import) a dedicated allocation for the image or buffer.EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT specifies that handles of this type can be exported from Vulkan memory objects.EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT specifies that handles of this type can be imported as Vulkan memory objects.Because their semantics in external APIs roughly align with that of an image or buffer with a dedicated allocation in Vulkan, implementations are required: to report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for the following external handle types:
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BITImplementations must not report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for images or buffers with external handle type EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, or EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT.
VkExternalMemoryFeatureFlags
public static final int VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented by its Vulkan fence object, and will therefore become invalid when all Vulkan fence objects associated with it are destroyed.EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Some external fence handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalFenceHandleTypeFlags, VkFenceGetFdInfoKHR, VkFenceGetWin32HandleInfoKHR, VkImportFenceFdInfoKHR, VkImportFenceWin32HandleInfoKHR, VkPhysicalDeviceExternalFenceInfo
public static final int VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented by its Vulkan fence object, and will therefore become invalid when all Vulkan fence objects associated with it are destroyed.EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Some external fence handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalFenceHandleTypeFlags, VkFenceGetFdInfoKHR, VkFenceGetWin32HandleInfoKHR, VkImportFenceFdInfoKHR, VkImportFenceWin32HandleInfoKHR, VkPhysicalDeviceExternalFenceInfo
public static final int VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented by its Vulkan fence object, and will therefore become invalid when all Vulkan fence objects associated with it are destroyed.EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Some external fence handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalFenceHandleTypeFlags, VkFenceGetFdInfoKHR, VkFenceGetWin32HandleInfoKHR, VkImportFenceFdInfoKHR, VkImportFenceWin32HandleInfoKHR, VkPhysicalDeviceExternalFenceInfo
public static final int VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan fence object.EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented by its Vulkan fence object, and will therefore become invalid when all Vulkan fence objects associated with it are destroyed.EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Some external fence handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalFenceHandleTypeFlags, VkFenceGetFdInfoKHR, VkFenceGetWin32HandleInfoKHR, VkImportFenceFdInfoKHR, VkImportFenceWin32HandleInfoKHR, VkPhysicalDeviceExternalFenceInfo
public static final int VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT
EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT specifies handles of this type can be exported from Vulkan fence objects.EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT specifies handles of this type can be imported to Vulkan fence objects.VkExternalFenceFeatureFlags
public static final int VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT
EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT specifies handles of this type can be exported from Vulkan fence objects.EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT specifies handles of this type can be imported to Vulkan fence objects.VkExternalFenceFeatureFlags
public static final int VK_FENCE_IMPORT_TEMPORARY_BIT
FENCE_IMPORT_TEMPORARY_BIT specifies that the fence payload will be imported only temporarily, as described in Importing Fence Payloads, regardless of the permanence of handleType.VkFenceImportFlags
public static final int VK_SEMAPHORE_IMPORT_TEMPORARY_BIT
These bits have the following meanings:
SEMAPHORE_IMPORT_TEMPORARY_BIT specifies that the semaphore payload will be imported only temporarily, as described in Importing Semaphore Payloads, regardless of the permanence of handleType.VkSemaphoreImportFlags
public static final int VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented its Vulkan semaphore object, and will therefore become invalid when all Vulkan semaphore objects associated with it are destroyed.EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 fence. It owns a reference to the underlying synchronization primitive associated with the Direct3D fence.EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence object. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT generated by the implementation may represent either Linux Sync Files or Android Fences at the implementation's discretion. Applications should only use operations defined for both types of file descriptors, unless they know via means external to Vulkan the type of the file descriptor, or are prepared to deal with the system-defined operation failures resulting from using the wrong type.
Some external semaphore handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalSemaphoreHandleTypeFlags, VkImportSemaphoreFdInfoKHR, VkImportSemaphoreWin32HandleInfoKHR, VkPhysicalDeviceExternalSemaphoreInfo, VkSemaphoreGetFdInfoKHR, VkSemaphoreGetWin32HandleInfoKHR
public static final int VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented its Vulkan semaphore object, and will therefore become invalid when all Vulkan semaphore objects associated with it are destroyed.EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 fence. It owns a reference to the underlying synchronization primitive associated with the Direct3D fence.EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence object. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT generated by the implementation may represent either Linux Sync Files or Android Fences at the implementation's discretion. Applications should only use operations defined for both types of file descriptors, unless they know via means external to Vulkan the type of the file descriptor, or are prepared to deal with the system-defined operation failures resulting from using the wrong type.
Some external semaphore handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalSemaphoreHandleTypeFlags, VkImportSemaphoreFdInfoKHR, VkImportSemaphoreWin32HandleInfoKHR, VkPhysicalDeviceExternalSemaphoreInfo, VkSemaphoreGetFdInfoKHR, VkSemaphoreGetWin32HandleInfoKHR
public static final int VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented its Vulkan semaphore object, and will therefore become invalid when all Vulkan semaphore objects associated with it are destroyed.EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 fence. It owns a reference to the underlying synchronization primitive associated with the Direct3D fence.EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence object. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT generated by the implementation may represent either Linux Sync Files or Android Fences at the implementation's discretion. Applications should only use operations defined for both types of file descriptors, unless they know via means external to Vulkan the type of the file descriptor, or are prepared to deal with the system-defined operation failures resulting from using the wrong type.
Some external semaphore handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalSemaphoreHandleTypeFlags, VkImportSemaphoreFdInfoKHR, VkImportSemaphoreWin32HandleInfoKHR, VkPhysicalDeviceExternalSemaphoreInfo, VkSemaphoreGetFdInfoKHR, VkSemaphoreGetWin32HandleInfoKHR
public static final int VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented its Vulkan semaphore object, and will therefore become invalid when all Vulkan semaphore objects associated with it are destroyed.EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 fence. It owns a reference to the underlying synchronization primitive associated with the Direct3D fence.EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence object. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT generated by the implementation may represent either Linux Sync Files or Android Fences at the implementation's discretion. Applications should only use operations defined for both types of file descriptors, unless they know via means external to Vulkan the type of the file descriptor, or are prepared to deal with the system-defined operation failures resulting from using the wrong type.
Some external semaphore handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalSemaphoreHandleTypeFlags, VkImportSemaphoreFdInfoKHR, VkImportSemaphoreWin32HandleInfoKHR, VkPhysicalDeviceExternalSemaphoreInfo, VkSemaphoreGetFdInfoKHR, VkSemaphoreGetWin32HandleInfoKHR
public static final int VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT specifies a POSIX file descriptor handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the POSIX system calls dup, dup2, close, and the non-standard system call dup3. Additionally, it must be transportable over a socket using an SCM_RIGHTS control message. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT specifies an NT handle that has only limited valid usage outside of Vulkan and other compatible APIs. It must be compatible with the functions DuplicateHandle, CloseHandle, CompareObjectHandles, GetHandleInformation, and SetHandleInformation. It owns a reference to the underlying synchronization primitive represented by its Vulkan semaphore object.EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT specifies a global share handle that has only limited valid usage outside of Vulkan and other compatible APIs. It is not compatible with any native APIs. It does not own a reference to the underlying synchronization primitive represented its Vulkan semaphore object, and will therefore become invalid when all Vulkan semaphore objects associated with it are destroyed.EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT specifies an NT handle returned by ID3D12Device::CreateSharedHandle referring to a Direct3D 12 fence. It owns a reference to the underlying synchronization primitive associated with the Direct3D fence.EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT specifies a POSIX file descriptor handle to a Linux Sync File or Android Fence object. It can be used with any native API accepting a valid sync file or fence as input. It owns a reference to the underlying synchronization primitive associated with the file descriptor. Implementations which support importing this handle type must accept any type of sync or fence FD supported by the native system they are running on.Handles of type EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT generated by the implementation may represent either Linux Sync Files or Android Fences at the implementation's discretion. Applications should only use operations defined for both types of file descriptors, unless they know via means external to Vulkan the type of the file descriptor, or are prepared to deal with the system-defined operation failures resulting from using the wrong type.
Some external semaphore handle types can only be shared within the same underlying physical device and/or the same driver version, as defined in the following table:
| Handle type | VkPhysicalDeviceIDProperties::driverUUID | VkPhysicalDeviceIDProperties::deviceUUID |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT | Must match | Must match |
EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT | No restriction | No restriction |
VkExternalSemaphoreHandleTypeFlags, VkImportSemaphoreFdInfoKHR, VkImportSemaphoreWin32HandleInfoKHR, VkPhysicalDeviceExternalSemaphoreInfo, VkSemaphoreGetFdInfoKHR, VkSemaphoreGetWin32HandleInfoKHR
public static final int VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT
EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT specifies that handles of this type can be exported from Vulkan semaphore objects.EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT specifies that handles of this type can be imported as Vulkan semaphore objects.VkExternalSemaphoreFeatureFlags
public static final int VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT
EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT specifies that handles of this type can be exported from Vulkan semaphore objects.EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT specifies that handles of this type can be imported as Vulkan semaphore objects.VkExternalSemaphoreFeatureFlags
public static final int VK_API_VERSION_1_1
public static final int VK_LUID_SIZE
public static final int VK_QUEUE_FAMILY_EXTERNAL
public static final int VK_MAX_DEVICE_GROUP_SIZE
public static int nvkEnumerateInstanceVersion(long pApiVersion)
EnumerateInstanceVersionpublic static int vkEnumerateInstanceVersion(java.nio.IntBuffer pApiVersion)
To query the version of instance-level functionality supported by the implementation, call:
VkResult vkEnumerateInstanceVersion(
uint32_t* pApiVersion);
pApiVersion must be a valid pointer to a uint32_t valuepApiVersion - a pointer to a uint32_t, which is the version of Vulkan supported by instance-level functionality, encoded as described in Version Numbers.public static int nvkBindBufferMemory2(org.lwjgl.vulkan.VkDevice device,
int bindInfoCount,
long pBindInfos)
BindBufferMemory2bindInfoCount - the number of elements in pBindInfos.public static int vkBindBufferMemory2(org.lwjgl.vulkan.VkDevice device,
VkBindBufferMemoryInfo.Buffer pBindInfos)
To attach memory to buffer objects for one or more buffers at a time, call:
VkResult vkBindBufferMemory2(
VkDevice device,
uint32_t bindInfoCount,
const VkBindBufferMemoryInfo* pBindInfos);
or the equivalent command
VkResult vkBindBufferMemory2KHR(
VkDevice device,
uint32_t bindInfoCount,
const VkBindBufferMemoryInfo* pBindInfos);
On some implementations, it may be more efficient to batch memory bindings into a single command.
device must be a valid VkDevice handlepBindInfos must be a valid pointer to an array of bindInfoCount valid VkBindBufferMemoryInfo structuresbindInfoCount must be greater than 0device - the logical device that owns the buffers and memory.pBindInfos - a pointer to an array of bindInfoCount VkBindBufferMemoryInfo structures describing buffers and memory to bind.public static int nvkBindImageMemory2(org.lwjgl.vulkan.VkDevice device,
int bindInfoCount,
long pBindInfos)
BindImageMemory2bindInfoCount - the number of elements in pBindInfos.public static int vkBindImageMemory2(org.lwjgl.vulkan.VkDevice device,
VkBindImageMemoryInfo.Buffer pBindInfos)
To attach memory to image objects for one or more images at a time, call:
VkResult vkBindImageMemory2(
VkDevice device,
uint32_t bindInfoCount,
const VkBindImageMemoryInfo* pBindInfos);
or the equivalent command
VkResult vkBindImageMemory2KHR(
VkDevice device,
uint32_t bindInfoCount,
const VkBindImageMemoryInfo* pBindInfos);
On some implementations, it may be more efficient to batch memory bindings into a single command.
device must be a valid VkDevice handlepBindInfos must be a valid pointer to an array of bindInfoCount valid VkBindImageMemoryInfo structuresbindInfoCount must be greater than 0device - the logical device that owns the images and memory.pBindInfos - a pointer to an array of VkBindImageMemoryInfo structures, describing images and memory to bind.public static void nvkGetDeviceGroupPeerMemoryFeatures(org.lwjgl.vulkan.VkDevice device,
int heapIndex,
int localDeviceIndex,
int remoteDeviceIndex,
long pPeerMemoryFeatures)
GetDeviceGroupPeerMemoryFeaturespublic static void vkGetDeviceGroupPeerMemoryFeatures(org.lwjgl.vulkan.VkDevice device,
int heapIndex,
int localDeviceIndex,
int remoteDeviceIndex,
java.nio.IntBuffer pPeerMemoryFeatures)
Peer memory is memory that is allocated for a given physical device and then bound to a resource and accessed by a different physical device, in a logical device that represents multiple physical devices. Some ways of reading and writing peer memory may not be supported by a device.
To determine how peer memory can be accessed, call:
void vkGetDeviceGroupPeerMemoryFeatures(
VkDevice device,
uint32_t heapIndex,
uint32_t localDeviceIndex,
uint32_t remoteDeviceIndex,
VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
or the equivalent command
void vkGetDeviceGroupPeerMemoryFeaturesKHR(
VkDevice device,
uint32_t heapIndex,
uint32_t localDeviceIndex,
uint32_t remoteDeviceIndex,
VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
heapIndex must be less than memoryHeapCountlocalDeviceIndex must be a valid device indexremoteDeviceIndex must be a valid device indexlocalDeviceIndex must not equal remoteDeviceIndexdevice must be a valid VkDevice handlepPeerMemoryFeatures must be a valid pointer to a VkPeerMemoryFeatureFlags valuedevice - the logical device that owns the memory.heapIndex - the index of the memory heap from which the memory is allocated.localDeviceIndex - the device index of the physical device that performs the memory access.remoteDeviceIndex - the device index of the physical device that the memory is allocated for.pPeerMemoryFeatures - a pointer to a VkPeerMemoryFeatureFlags bitmask indicating which types of memory accesses are supported for the combination of heap, local, and remote devices.public static void vkCmdSetDeviceMask(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int deviceMask)
To update the current device mask of a command buffer, call:
void vkCmdSetDeviceMask(
VkCommandBuffer commandBuffer,
uint32_t deviceMask);
or the equivalent command
void vkCmdSetDeviceMaskKHR(
VkCommandBuffer commandBuffer,
uint32_t deviceMask);
deviceMask is used to filter out subsequent commands from executing on all physical devices whose bit indices are not set in the mask, except commands beginning a render pass instance, commands transitioning to the next subpass in the render pass instance, and commands ending a render pass instance, which always execute on the set of physical devices whose bit indices are included in the deviceMask member of the VkDeviceGroupRenderPassBeginInfo structure passed to the command beginning the corresponding render pass instance.
deviceMask must be a valid device mask valuedeviceMask must not be zerodeviceMask must not include any set bits that were not in the VkDeviceGroupCommandBufferBeginInfo::deviceMask value when the command buffer began recording.vkCmdSetDeviceMask is called inside a render pass instance, deviceMask must not include any set bits that were not in the VkDeviceGroupRenderPassBeginInfo::deviceMask value when the render pass instance began recording.commandBuffer must be a valid VkCommandBuffer handlecommandBuffer must be in the recording stateVkCommandPool that commandBuffer was allocated from must support graphics, compute, or transfer operationscommandBuffer must be externally synchronizedVkCommandPool that commandBuffer was allocated from must be externally synchronized| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| Primary Secondary | Both | Graphics Compute Transfer |
commandBuffer - command buffer whose current device mask is modified.deviceMask - the new value of the current device mask.public static void vkCmdDispatchBase(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int baseGroupX,
int baseGroupY,
int baseGroupZ,
int groupCountX,
int groupCountY,
int groupCountZ)
To record a dispatch using non-zero base values for the components of WorkgroupId, call:
void vkCmdDispatchBase(
VkCommandBuffer commandBuffer,
uint32_t baseGroupX,
uint32_t baseGroupY,
uint32_t baseGroupZ,
uint32_t groupCountX,
uint32_t groupCountY,
uint32_t groupCountZ);
or the equivalent command
void vkCmdDispatchBaseKHR(
VkCommandBuffer commandBuffer,
uint32_t baseGroupX,
uint32_t baseGroupY,
uint32_t baseGroupZ,
uint32_t groupCountX,
uint32_t groupCountY,
uint32_t groupCountZ);
When the command is executed, a global workgroup consisting of groupCountX × groupCountY × groupCountZ local workgroups is assembled, with WorkgroupId values ranging from [baseGroup*, baseGroup* + groupCount*) in each component. CmdDispatch is equivalent to vkCmdDispatchBase(0,0,0,groupCountX,groupCountY,groupCountZ).
VkImageView is sampled with FILTER_LINEAR as a result of this command, then the image view’s format features must contain FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BITVkImageView is accessed using atomic operations as a result of this command, then the image view’s format features must contain FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BITVkImageView is sampled with FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXTVkImageView being sampled with FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2VkImageView being sampled with FILTER_CUBIC_EXT with a reduction mode of either SAMPLER_REDUCTION_MODE_MIN_EXT or SAMPLER_REDUCTION_MODE_MAX_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2VkImage created with a VkImageCreateInfo::flags containing IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE.VkPipeline bound to the pipeline bind point used by this command, a descriptor set must have been bound to n at the same pipeline bind point, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in Pipeline Layout CompatibilityVkPipeline bound to the pipeline bind point used by this command, a push constant value must have been set for the same pipeline bind point, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in Pipeline Layout CompatibilityvkCmdBindDescriptorSets, must be valid if they are statically used by the VkPipeline bound to the pipeline bind point used by this commandVkPipeline object bound to the pipeline bind point used by this command requires any dynamic state, that state must have been set for commandBufferVkPipeline object bound to the pipeline bind point used by this command accesses a VkSampler object that uses unnormalized coordinates, that sampler must not be used to sample from any VkImage with a VkImageView of the type IMAGE_VIEW_TYPE_3D, IMAGE_VIEW_TYPE_CUBE, IMAGE_VIEW_TYPE_1D_ARRAY, IMAGE_VIEW_TYPE_2D_ARRAY or IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stageVkPipeline object bound to the pipeline bind point used by this command accesses a VkSampler object that uses unnormalized coordinates, that sampler must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stageVkPipeline object bound to the pipeline bind point used by this command accesses a VkSampler object that uses unnormalized coordinates, that sampler must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stageVkPipeline object bound to the pipeline bind point used by this command accesses a uniform buffer, it must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind pointVkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, it must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind pointcommandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resourcebaseGroupX must be less than VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0]baseGroupX must be less than VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1]baseGroupZ must be less than VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2]groupCountX must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0] minus baseGroupXgroupCountY must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1] minus baseGroupYgroupCountZ must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2] minus baseGroupZbaseGroupX, baseGroupY, or baseGroupZ are not zero, then the bound compute pipeline must have been created with the PIPELINE_CREATE_DISPATCH_BASE flag.commandBuffer must be a valid VkCommandBuffer handlecommandBuffer must be in the recording stateVkCommandPool that commandBuffer was allocated from must support compute operationscommandBuffer must be externally synchronizedVkCommandPool that commandBuffer was allocated from must be externally synchronized| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| Primary Secondary | Outside | Compute |
commandBuffer - the command buffer into which the command will be recorded.baseGroupX - the start value for the X component of WorkgroupId.baseGroupY - the start value for the Y component of WorkgroupId.baseGroupZ - the start value for the Z component of WorkgroupId.groupCountX - the number of local workgroups to dispatch in the X dimension.groupCountY - the number of local workgroups to dispatch in the Y dimension.groupCountZ - the number of local workgroups to dispatch in the Z dimension.public static int nvkEnumeratePhysicalDeviceGroups(org.lwjgl.vulkan.VkInstance instance,
long pPhysicalDeviceGroupCount,
long pPhysicalDeviceGroupProperties)
EnumeratePhysicalDeviceGroupspPhysicalDeviceGroupCount - a pointer to an integer related to the number of device groups available or queried, as described below.public static int vkEnumeratePhysicalDeviceGroups(org.lwjgl.vulkan.VkInstance instance,
java.nio.IntBuffer pPhysicalDeviceGroupCount,
@Nullable
VkPhysicalDeviceGroupProperties.Buffer pPhysicalDeviceGroupProperties)
To retrieve a list of the device groups present in the system, call:
VkResult vkEnumeratePhysicalDeviceGroups(
VkInstance instance,
uint32_t* pPhysicalDeviceGroupCount,
VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
or the equivalent command
VkResult vkEnumeratePhysicalDeviceGroupsKHR(
VkInstance instance,
uint32_t* pPhysicalDeviceGroupCount,
VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
If pPhysicalDeviceGroupProperties is NULL, then the number of device groups available is returned in pPhysicalDeviceGroupCount. Otherwise, pPhysicalDeviceGroupCount must point to a variable set by the user to the number of elements in the pPhysicalDeviceGroupProperties array, and on return the variable is overwritten with the number of structures actually written to pPhysicalDeviceGroupProperties. If pPhysicalDeviceGroupCount is less than the number of device groups available, at most pPhysicalDeviceGroupCount structures will be written. If pPhysicalDeviceGroupCount is smaller than the number of device groups available, INCOMPLETE will be returned instead of SUCCESS, to indicate that not all the available device groups were returned.
Every physical device must be in exactly one device group.
instance must be a valid VkInstance handlepPhysicalDeviceGroupCount must be a valid pointer to a uint32_t valuepPhysicalDeviceGroupCount is not 0, and pPhysicalDeviceGroupProperties is not NULL, pPhysicalDeviceGroupProperties must be a valid pointer to an array of pPhysicalDeviceGroupCount VkPhysicalDeviceGroupProperties structuresinstance - a handle to a Vulkan instance previously created with CreateInstance.pPhysicalDeviceGroupCount - a pointer to an integer related to the number of device groups available or queried, as described below.pPhysicalDeviceGroupProperties - either NULL or a pointer to an array of VkPhysicalDeviceGroupProperties structures.public static void nvkGetImageMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
long pInfo,
long pMemoryRequirements)
GetImageMemoryRequirements2public static void vkGetImageMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkImageMemoryRequirementsInfo2 pInfo,
VkMemoryRequirements2 pMemoryRequirements)
To determine the memory requirements for an image resource, call:
void vkGetImageMemoryRequirements2(
VkDevice device,
const VkImageMemoryRequirementsInfo2* pInfo,
VkMemoryRequirements2* pMemoryRequirements);
or the equivalent command
void vkGetImageMemoryRequirements2KHR(
VkDevice device,
const VkImageMemoryRequirementsInfo2* pInfo,
VkMemoryRequirements2* pMemoryRequirements);
device must be a valid VkDevice handlepInfo must be a valid pointer to a valid VkImageMemoryRequirementsInfo2 structurepMemoryRequirements must be a valid pointer to a VkMemoryRequirements2 structuredevice - the logical device that owns the image.pInfo - a pointer to a VkImageMemoryRequirementsInfo2 structure containing parameters required for the memory requirements query.pMemoryRequirements - a pointer to a VkMemoryRequirements2 structure in which the memory requirements of the image object are returned.public static void nvkGetBufferMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
long pInfo,
long pMemoryRequirements)
GetBufferMemoryRequirements2public static void vkGetBufferMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkBufferMemoryRequirementsInfo2 pInfo,
VkMemoryRequirements2 pMemoryRequirements)
To determine the memory requirements for a buffer resource, call:
void vkGetBufferMemoryRequirements2(
VkDevice device,
const VkBufferMemoryRequirementsInfo2* pInfo,
VkMemoryRequirements2* pMemoryRequirements);
or the equivalent command
void vkGetBufferMemoryRequirements2KHR(
VkDevice device,
const VkBufferMemoryRequirementsInfo2* pInfo,
VkMemoryRequirements2* pMemoryRequirements);
device must be a valid VkDevice handlepInfo must be a valid pointer to a valid VkBufferMemoryRequirementsInfo2 structurepMemoryRequirements must be a valid pointer to a VkMemoryRequirements2 structuredevice - the logical device that owns the buffer.pInfo - a pointer to a VkBufferMemoryRequirementsInfo2 structure containing parameters required for the memory requirements query.pMemoryRequirements - a pointer to a VkMemoryRequirements2 structure in which the memory requirements of the buffer object are returned.public static void nvkGetImageSparseMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
long pInfo,
long pSparseMemoryRequirementCount,
long pSparseMemoryRequirements)
GetImageSparseMemoryRequirements2pSparseMemoryRequirementCount - a pointer to an integer related to the number of sparse memory requirements available or queried, as described below.public static void vkGetImageSparseMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkImageSparseMemoryRequirementsInfo2 pInfo,
java.nio.IntBuffer pSparseMemoryRequirementCount,
@Nullable
VkSparseImageMemoryRequirements2.Buffer pSparseMemoryRequirements)
To query sparse memory requirements for an image, call:
void vkGetImageSparseMemoryRequirements2(
VkDevice device,
const VkImageSparseMemoryRequirementsInfo2* pInfo,
uint32_t* pSparseMemoryRequirementCount,
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
or the equivalent command
void vkGetImageSparseMemoryRequirements2KHR(
VkDevice device,
const VkImageSparseMemoryRequirementsInfo2* pInfo,
uint32_t* pSparseMemoryRequirementCount,
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
device must be a valid VkDevice handlepInfo must be a valid pointer to a valid VkImageSparseMemoryRequirementsInfo2 structurepSparseMemoryRequirementCount must be a valid pointer to a uint32_t valuepSparseMemoryRequirementCount is not 0, and pSparseMemoryRequirements is not NULL, pSparseMemoryRequirements must be a valid pointer to an array of pSparseMemoryRequirementCount VkSparseImageMemoryRequirements2 structuresVkImageSparseMemoryRequirementsInfo2, VkSparseImageMemoryRequirements2
device - the logical device that owns the image.pInfo - a pointer to a VkImageSparseMemoryRequirementsInfo2 structure containing parameters required for the memory requirements query.pSparseMemoryRequirementCount - a pointer to an integer related to the number of sparse memory requirements available or queried, as described below.pSparseMemoryRequirements - either NULL or a pointer to an array of VkSparseImageMemoryRequirements2 structures.public static void nvkGetPhysicalDeviceFeatures2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pFeatures)
GetPhysicalDeviceFeatures2public static void vkGetPhysicalDeviceFeatures2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceFeatures2 pFeatures)
To query supported features defined by the core or extensions, call:
void vkGetPhysicalDeviceFeatures2(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceFeatures2* pFeatures);
or the equivalent command
void vkGetPhysicalDeviceFeatures2KHR(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceFeatures2* pFeatures);
Each structure in pFeatures and its pNext chain contains members corresponding to fine-grained features. vkGetPhysicalDeviceFeatures2 writes each member to a boolean value indicating whether that feature is supported.
physicalDevice must be a valid VkPhysicalDevice handlepFeatures must be a valid pointer to a VkPhysicalDeviceFeatures2 structurephysicalDevice - the physical device from which to query the supported features.pFeatures - a pointer to a VkPhysicalDeviceFeatures2 structure in which the physical device features are returned.public static void nvkGetPhysicalDeviceProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pProperties)
GetPhysicalDeviceProperties2public static void vkGetPhysicalDeviceProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceProperties2 pProperties)
To query general properties of physical devices once enumerated, call:
void vkGetPhysicalDeviceProperties2(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceProperties2* pProperties);
or the equivalent command
void vkGetPhysicalDeviceProperties2KHR(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceProperties2* pProperties);
Each structure in pProperties and its pNext chain contain members corresponding to properties or implementation-dependent limits. vkGetPhysicalDeviceProperties2 writes each member to a value indicating the value of that property or limit.
physicalDevice must be a valid VkPhysicalDevice handlepProperties must be a valid pointer to a VkPhysicalDeviceProperties2 structurephysicalDevice - the handle to the physical device whose properties will be queried.pProperties - a pointer to a VkPhysicalDeviceProperties2 structure in which properties are returned.public static void nvkGetPhysicalDeviceFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
int format,
long pFormatProperties)
GetPhysicalDeviceFormatProperties2public static void vkGetPhysicalDeviceFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
int format,
VkFormatProperties2 pFormatProperties)
To query supported format features which are properties of the physical device, call:
void vkGetPhysicalDeviceFormatProperties2(
VkPhysicalDevice physicalDevice,
VkFormat format,
VkFormatProperties2* pFormatProperties);
or the equivalent command
void vkGetPhysicalDeviceFormatProperties2KHR(
VkPhysicalDevice physicalDevice,
VkFormat format,
VkFormatProperties2* pFormatProperties);
vkGetPhysicalDeviceFormatProperties2 behaves similarly to GetPhysicalDeviceFormatProperties, with the ability to return extended information in a pNext chain of output structures.
physicalDevice must be a valid VkPhysicalDevice handleformat must be a valid VkFormat valuepFormatProperties must be a valid pointer to a VkFormatProperties2 structurephysicalDevice - the physical device from which to query the format properties.format - the format whose properties are queried.pFormatProperties - a pointer to a VkFormatProperties2 structure in which physical device properties for format are returned.public static int nvkGetPhysicalDeviceImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pImageFormatInfo,
long pImageFormatProperties)
GetPhysicalDeviceImageFormatProperties2public static int vkGetPhysicalDeviceImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceImageFormatInfo2 pImageFormatInfo,
VkImageFormatProperties2 pImageFormatProperties)
To query additional capabilities specific to image types, call:
VkResult vkGetPhysicalDeviceImageFormatProperties2(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
VkImageFormatProperties2* pImageFormatProperties);
or the equivalent command
VkResult vkGetPhysicalDeviceImageFormatProperties2KHR(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
VkImageFormatProperties2* pImageFormatProperties);
vkGetPhysicalDeviceImageFormatProperties2 behaves similarly to GetPhysicalDeviceImageFormatProperties, with the ability to return extended information in a pNext chain of output structures.
physicalDevice must be a valid VkPhysicalDevice handlepImageFormatInfo must be a valid pointer to a valid VkPhysicalDeviceImageFormatInfo2 structurepImageFormatProperties must be a valid pointer to a VkImageFormatProperties2 structurephysicalDevice - the physical device from which to query the image capabilities.pImageFormatInfo - a pointer to a VkPhysicalDeviceImageFormatInfo2 structure describing the parameters that would be consumed by CreateImage.pImageFormatProperties - a pointer to a VkImageFormatProperties2 structure in which capabilities are returned.public static void nvkGetPhysicalDeviceQueueFamilyProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pQueueFamilyPropertyCount,
long pQueueFamilyProperties)
GetPhysicalDeviceQueueFamilyProperties2pQueueFamilyPropertyCount - a pointer to an integer related to the number of queue families available or queried, as described in GetPhysicalDeviceQueueFamilyProperties.public static void vkGetPhysicalDeviceQueueFamilyProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
java.nio.IntBuffer pQueueFamilyPropertyCount,
@Nullable
VkQueueFamilyProperties2.Buffer pQueueFamilyProperties)
To query properties of queues available on a physical device, call:
void vkGetPhysicalDeviceQueueFamilyProperties2(
VkPhysicalDevice physicalDevice,
uint32_t* pQueueFamilyPropertyCount,
VkQueueFamilyProperties2* pQueueFamilyProperties);
or the equivalent command
void vkGetPhysicalDeviceQueueFamilyProperties2KHR(
VkPhysicalDevice physicalDevice,
uint32_t* pQueueFamilyPropertyCount,
VkQueueFamilyProperties2* pQueueFamilyProperties);
vkGetPhysicalDeviceQueueFamilyProperties2 behaves similarly to GetPhysicalDeviceQueueFamilyProperties, with the ability to return extended information in a pNext chain of output structures.
physicalDevice must be a valid VkPhysicalDevice handlepQueueFamilyPropertyCount must be a valid pointer to a uint32_t valuepQueueFamilyPropertyCount is not 0, and pQueueFamilyProperties is not NULL, pQueueFamilyProperties must be a valid pointer to an array of pQueueFamilyPropertyCount VkQueueFamilyProperties2 structuresphysicalDevice - the handle to the physical device whose properties will be queried.pQueueFamilyPropertyCount - a pointer to an integer related to the number of queue families available or queried, as described in GetPhysicalDeviceQueueFamilyProperties.pQueueFamilyProperties - either NULL or a pointer to an array of VkQueueFamilyProperties2 structures.public static void nvkGetPhysicalDeviceMemoryProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pMemoryProperties)
GetPhysicalDeviceMemoryProperties2public static void vkGetPhysicalDeviceMemoryProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceMemoryProperties2 pMemoryProperties)
To query memory properties, call:
void vkGetPhysicalDeviceMemoryProperties2(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
or the equivalent command
void vkGetPhysicalDeviceMemoryProperties2KHR(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
vkGetPhysicalDeviceMemoryProperties2 behaves similarly to GetPhysicalDeviceMemoryProperties, with the ability to return extended information in a pNext chain of output structures.
physicalDevice must be a valid VkPhysicalDevice handlepMemoryProperties must be a valid pointer to a VkPhysicalDeviceMemoryProperties2 structurephysicalDevice - the handle to the device to query.pMemoryProperties - a pointer to a VkPhysicalDeviceMemoryProperties2 structure in which the properties are returned.public static void nvkGetPhysicalDeviceSparseImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pFormatInfo,
long pPropertyCount,
long pProperties)
GetPhysicalDeviceSparseImageFormatProperties2pPropertyCount - a pointer to an integer related to the number of sparse format properties available or queried, as described below.public static void vkGetPhysicalDeviceSparseImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceSparseImageFormatInfo2 pFormatInfo,
java.nio.IntBuffer pPropertyCount,
@Nullable
VkSparseImageFormatProperties2.Buffer pProperties)
vkGetPhysicalDeviceSparseImageFormatProperties2 returns an array of VkSparseImageFormatProperties2. Each element will describe properties for one set of image aspects that are bound simultaneously in the image. This is usually one element for each aspect in the image, but for interleaved depth/stencil images there is only one element describing the combined aspects.
void vkGetPhysicalDeviceSparseImageFormatProperties2(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
uint32_t* pPropertyCount,
VkSparseImageFormatProperties2* pProperties);
or the equivalent command
void vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
uint32_t* pPropertyCount,
VkSparseImageFormatProperties2* pProperties);
vkGetPhysicalDeviceSparseImageFormatProperties2 behaves identically to GetPhysicalDeviceSparseImageFormatProperties, with the ability to return extended information by adding extension structures to the pNext chain of its pProperties parameter.
physicalDevice must be a valid VkPhysicalDevice handlepFormatInfo must be a valid pointer to a valid VkPhysicalDeviceSparseImageFormatInfo2 structurepPropertyCount must be a valid pointer to a uint32_t valuepPropertyCount is not 0, and pProperties is not NULL, pProperties must be a valid pointer to an array of pPropertyCount VkSparseImageFormatProperties2 structuresVkPhysicalDeviceSparseImageFormatInfo2, VkSparseImageFormatProperties2
physicalDevice - the physical device from which to query the sparse image capabilities.pFormatInfo - a pointer to a VkPhysicalDeviceSparseImageFormatInfo2 structure containing input parameters to the command.pPropertyCount - a pointer to an integer related to the number of sparse format properties available or queried, as described below.pProperties - either NULL or a pointer to an array of VkSparseImageFormatProperties2 structures.public static void vkTrimCommandPool(org.lwjgl.vulkan.VkDevice device,
long commandPool,
int flags)
To trim a command pool, call:
void vkTrimCommandPool(
VkDevice device,
VkCommandPool commandPool,
VkCommandPoolTrimFlags flags);
or the equivalent command
void vkTrimCommandPoolKHR(
VkDevice device,
VkCommandPool commandPool,
VkCommandPoolTrimFlags flags);
Trimming a command pool recycles unused memory from the command pool back to the system. Command buffers allocated from the pool are not affected by the command.
This command provides applications with some control over the internal memory allocations used by command pools.
Unused memory normally arises from command buffers that have been recorded and later reset, such that they are no longer using the memory. On reset, a command buffer can return memory to its command pool, but the only way to release memory from a command pool to the system requires calling ResetCommandPool, which cannot be executed while any command buffers from that pool are still in use. Subsequent recording operations into command buffers will re-use this memory but since total memory requirements fluctuate over time, unused memory can accumulate.
In this situation, trimming a command pool may be useful to return unused memory back to the system, returning the total outstanding memory allocated by the pool back to a more "average" value.
Implementations utilize many internal allocation strategies that make it impossible to guarantee that all unused memory is released back to the system. For instance, an implementation of a command pool may involve allocating memory in bulk from the system and sub-allocating from that memory. In such an implementation any live command buffer that holds a reference to a bulk allocation would prevent that allocation from being freed, even if only a small proportion of the bulk allocation is in use.
In most cases trimming will result in a reduction in allocated but unused memory, but it does not guarantee the "ideal" behavior.
Trimming may be an expensive operation, and should not be called frequently. Trimming should be treated as a way to relieve memory pressure after application-known points when there exists enough unused memory that the cost of trimming is "worth" it.
device must be a valid VkDevice handlecommandPool must be a valid VkCommandPool handleflags must be 0commandPool must have been created, allocated, or retrieved from devicecommandPool must be externally synchronizeddevice - the logical device that owns the command pool.commandPool - the command pool to trim.flags - reserved for future use.public static void nvkGetDeviceQueue2(org.lwjgl.vulkan.VkDevice device,
long pQueueInfo,
long pQueue)
GetDeviceQueue2public static void vkGetDeviceQueue2(org.lwjgl.vulkan.VkDevice device,
VkDeviceQueueInfo2 pQueueInfo,
org.lwjgl.PointerBuffer pQueue)
To retrieve a handle to a VkQueue object with specific VkDeviceQueueCreateFlags creation flags, call:
void vkGetDeviceQueue2(
VkDevice device,
const VkDeviceQueueInfo2* pQueueInfo,
VkQueue* pQueue);
device must be a valid VkDevice handlepQueueInfo must be a valid pointer to a valid VkDeviceQueueInfo2 structurepQueue must be a valid pointer to a VkQueue handledevice - the logical device that owns the queue.pQueueInfo - a pointer to a VkDeviceQueueInfo2 structure, describing the parameters used to create the device queue.pQueue - a pointer to a VkQueue object that will be filled with the handle for the requested queue.public static int nvkCreateSamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
long pCreateInfo,
long pAllocator,
long pYcbcrConversion)
CreateSamplerYcbcrConversionpublic static int vkCreateSamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
VkSamplerYcbcrConversionCreateInfo pCreateInfo,
@Nullable
VkAllocationCallbacks pAllocator,
java.nio.LongBuffer pYcbcrConversion)
To create a VkSamplerYcbcrConversion, call:
VkResult vkCreateSamplerYcbcrConversion(
VkDevice device,
const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
const VkAllocationCallbacks* pAllocator,
VkSamplerYcbcrConversion* pYcbcrConversion);
or the equivalent command
VkResult vkCreateSamplerYcbcrConversionKHR(
VkDevice device,
const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
const VkAllocationCallbacks* pAllocator,
VkSamplerYcbcrConversion* pYcbcrConversion);
The interpretation of the configured sampler Y'CBCR conversion is described in more detail in the description of sampler Y'CBCR conversion in the Image Operations chapter.
device must be a valid VkDevice handlepCreateInfo must be a valid pointer to a valid VkSamplerYcbcrConversionCreateInfo structurepAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structurepYcbcrConversion must be a valid pointer to a VkSamplerYcbcrConversion handledevice - the logical device that creates the sampler Y’CBCR conversion.pCreateInfo - a pointer to a VkSamplerYcbcrConversionCreateInfo structure specifying the requested sampler Y’CBCR conversion.pAllocator - controls host memory allocation as described in the Memory Allocation chapter.pYcbcrConversion - a pointer to a VkSamplerYcbcrConversion handle in which the resulting sampler Y’CBCR conversion is returned.public static void nvkDestroySamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
long ycbcrConversion,
long pAllocator)
DestroySamplerYcbcrConversionpublic static void vkDestroySamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
long ycbcrConversion,
@Nullable
VkAllocationCallbacks pAllocator)
To destroy a sampler Y'CBCR conversion, call:
void vkDestroySamplerYcbcrConversion(
VkDevice device,
VkSamplerYcbcrConversion ycbcrConversion,
const VkAllocationCallbacks* pAllocator);
or the equivalent command
void vkDestroySamplerYcbcrConversionKHR(
VkDevice device,
VkSamplerYcbcrConversion ycbcrConversion,
const VkAllocationCallbacks* pAllocator);
device must be a valid VkDevice handleycbcrConversion is not NULL_HANDLE, ycbcrConversion must be a valid VkSamplerYcbcrConversion handlepAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structureycbcrConversion is a valid handle, it must have been created, allocated, or retrieved from deviceycbcrConversion must be externally synchronizeddevice - the logical device that destroys the Y’CBCR conversion.ycbcrConversion - the conversion to destroy.pAllocator - controls host memory allocation as described in the Memory Allocation chapter.public static int nvkCreateDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
long pCreateInfo,
long pAllocator,
long pDescriptorUpdateTemplate)
CreateDescriptorUpdateTemplatepublic static int vkCreateDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
VkDescriptorUpdateTemplateCreateInfo pCreateInfo,
@Nullable
VkAllocationCallbacks pAllocator,
java.nio.LongBuffer pDescriptorUpdateTemplate)
Updating a large VkDescriptorSet array can be an expensive operation since an application must specify one VkWriteDescriptorSet structure for each descriptor or descriptor array to update, each of which re-specifies the same state when updating the same descriptor in multiple descriptor sets. For cases when an application wishes to update the same set of descriptors in multiple descriptor sets allocated using the same VkDescriptorSetLayout, UpdateDescriptorSetWithTemplate can be used as a replacement for UpdateDescriptorSets.
VkDescriptorUpdateTemplate allows implementations to convert a set of descriptor update operations on a single descriptor set to an internal format that, in conjunction with UpdateDescriptorSetWithTemplate or CmdPushDescriptorSetWithTemplateKHR , can be more efficient compared to calling UpdateDescriptorSets or CmdPushDescriptorSetKHR . The descriptors themselves are not specified in the VkDescriptorUpdateTemplate, rather, offsets into an application provided pointer to host memory are specified, which are combined with a pointer passed to UpdateDescriptorSetWithTemplate or CmdPushDescriptorSetWithTemplateKHR . This allows large batches of updates to be executed without having to convert application data structures into a strictly-defined Vulkan data structure.
To create a descriptor update template, call:
VkResult vkCreateDescriptorUpdateTemplate(
VkDevice device,
const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
const VkAllocationCallbacks* pAllocator,
VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
or the equivalent command
VkResult vkCreateDescriptorUpdateTemplateKHR(
VkDevice device,
const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
const VkAllocationCallbacks* pAllocator,
VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
device must be a valid VkDevice handlepCreateInfo must be a valid pointer to a valid VkDescriptorUpdateTemplateCreateInfo structurepAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structurepDescriptorUpdateTemplate must be a valid pointer to a VkDescriptorUpdateTemplate handledevice - the logical device that creates the descriptor update template.pCreateInfo - a pointer to a VkDescriptorUpdateTemplateCreateInfo structure specifying the set of descriptors to update with a single call to CmdPushDescriptorSetWithTemplateKHR or UpdateDescriptorSetWithTemplate.pAllocator - controls host memory allocation as described in the Memory Allocation chapter.pDescriptorUpdateTemplate - a pointer to a VkDescriptorUpdateTemplate handle in which the resulting descriptor update template object is returned.public static void nvkDestroyDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
long descriptorUpdateTemplate,
long pAllocator)
DestroyDescriptorUpdateTemplatepublic static void vkDestroyDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
long descriptorUpdateTemplate,
@Nullable
VkAllocationCallbacks pAllocator)
To destroy a descriptor update template, call:
void vkDestroyDescriptorUpdateTemplate(
VkDevice device,
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
const VkAllocationCallbacks* pAllocator);
or the equivalent command
void vkDestroyDescriptorUpdateTemplateKHR(
VkDevice device,
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
const VkAllocationCallbacks* pAllocator);
VkAllocationCallbacks were provided when descriptorSetLayout was created, a compatible set of callbacks must be provided hereVkAllocationCallbacks were provided when descriptorSetLayout was created, pAllocator must be NULLdevice must be a valid VkDevice handledescriptorUpdateTemplate is not NULL_HANDLE, descriptorUpdateTemplate must be a valid VkDescriptorUpdateTemplate handlepAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structuredescriptorUpdateTemplate is a valid handle, it must have been created, allocated, or retrieved from devicedescriptorUpdateTemplate must be externally synchronizeddevice - the logical device that has been used to create the descriptor update templatedescriptorUpdateTemplate - the descriptor update template to destroy.pAllocator - controls host memory allocation as described in the Memory Allocation chapter.public static void vkUpdateDescriptorSetWithTemplate(org.lwjgl.vulkan.VkDevice device,
long descriptorSet,
long descriptorUpdateTemplate,
long pData)
Once a VkDescriptorUpdateTemplate has been created, descriptor sets can be updated by calling:
void vkUpdateDescriptorSetWithTemplate(
VkDevice device,
VkDescriptorSet descriptorSet,
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
const void* pData);
or the equivalent command
void vkUpdateDescriptorSetWithTemplateKHR(
VkDevice device,
VkDescriptorSet descriptorSet,
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
const void* pData);
pData must be a valid pointer to a memory containing one or more valid instances of VkDescriptorImageInfo, VkDescriptorBufferInfo, or VkBufferView in a layout defined by descriptorUpdateTemplate when it was created with CreateDescriptorUpdateTemplatedevice must be a valid VkDevice handledescriptorSet must be a valid VkDescriptorSet handledescriptorUpdateTemplate must be a valid VkDescriptorUpdateTemplate handledescriptorUpdateTemplate must have been created, allocated, or retrieved from devicedescriptorSet must be externally synchronized
struct AppBufferView {
VkBufferView bufferView;
uint32_t applicationRelatedInformation;
};
struct AppDataStructure
{
VkDescriptorImageInfo imageInfo; // a single image info
VkDescriptorBufferInfo bufferInfoArray[3]; // 3 buffer infos in an array
AppBufferView bufferView[2]; // An application defined structure containing a bufferView
// ... some more application related data
};
const VkDescriptorUpdateTemplateEntry descriptorUpdateTemplateEntries[] =
{
// binding to a single image descriptor
{
0, // binding
0, // dstArrayElement
1, // descriptorCount
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, // descriptorType
offsetof(AppDataStructure, imageInfo), // offset
0 // stride is not required if descriptorCount is 1
},
// binding to an array of buffer descriptors
{
1, // binding
0, // dstArrayElement
3, // descriptorCount
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, // descriptorType
offsetof(AppDataStructure, bufferInfoArray), // offset
sizeof(VkDescriptorBufferInfo) // stride, descriptor buffer infos are compact
},
// binding to an array of buffer views
{
2, // binding
0, // dstArrayElement
2, // descriptorCount
VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, // descriptorType
offsetof(AppDataStructure, bufferView) +
offsetof(AppBufferView, bufferView), // offset
sizeof(AppBufferView) // stride, bufferViews do not have to be compact
},
};
// create a descriptor update template for descriptor set updates
const VkDescriptorUpdateTemplateCreateInfo createInfo =
{
VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, // sType
NULL, // pNext
0, // flags
3, // descriptorUpdateEntryCount
descriptorUpdateTemplateEntries, // pDescriptorUpdateEntries
VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET, // templateType
myLayout, // descriptorSetLayout
0, // pipelineBindPoint, ignored by given templateType
0, // pipelineLayout, ignored by given templateType
0, // set, ignored by given templateType
};
VkDescriptorUpdateTemplate myDescriptorUpdateTemplate;
myResult = vkCreateDescriptorUpdateTemplate(
myDevice,
&createInfo,
NULL,
&myDescriptorUpdateTemplate);
}
AppDataStructure appData;
// fill appData here or cache it in your engine
vkUpdateDescriptorSetWithTemplate(myDevice, myDescriptorSet, myDescriptorUpdateTemplate, &appData);device - the logical device that updates the descriptor sets.descriptorSet - the descriptor set to updatedescriptorUpdateTemplate - a VkDescriptorUpdateTemplate object specifying the update mapping between pData and the descriptor set to update.pData - a pointer to memory containing one or more VkDescriptorImageInfo, VkDescriptorBufferInfo, or VkBufferView structures used to write the descriptors.public static void nvkGetPhysicalDeviceExternalBufferProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pExternalBufferInfo,
long pExternalBufferProperties)
GetPhysicalDeviceExternalBufferPropertiespublic static void vkGetPhysicalDeviceExternalBufferProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExternalBufferInfo pExternalBufferInfo,
VkExternalBufferProperties pExternalBufferProperties)
To query the external handle types supported by buffers, call:
void vkGetPhysicalDeviceExternalBufferProperties(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
VkExternalBufferProperties* pExternalBufferProperties);
or the equivalent command
void vkGetPhysicalDeviceExternalBufferPropertiesKHR(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
VkExternalBufferProperties* pExternalBufferProperties);
physicalDevice must be a valid VkPhysicalDevice handlepExternalBufferInfo must be a valid pointer to a valid VkPhysicalDeviceExternalBufferInfo structurepExternalBufferProperties must be a valid pointer to a VkExternalBufferProperties structureVkExternalBufferProperties, VkPhysicalDeviceExternalBufferInfo
physicalDevice - the physical device from which to query the buffer capabilities.pExternalBufferInfo - a pointer to a VkPhysicalDeviceExternalBufferInfo structure describing the parameters that would be consumed by CreateBuffer.pExternalBufferProperties - a pointer to a VkExternalBufferProperties structure in which capabilities are returned.public static void nvkGetPhysicalDeviceExternalFenceProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pExternalFenceInfo,
long pExternalFenceProperties)
GetPhysicalDeviceExternalFencePropertiespublic static void vkGetPhysicalDeviceExternalFenceProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExternalFenceInfo pExternalFenceInfo,
VkExternalFenceProperties pExternalFenceProperties)
Fences may support import and export of their payload to external handles. To query the external handle types supported by fences, call:
void vkGetPhysicalDeviceExternalFenceProperties(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
VkExternalFenceProperties* pExternalFenceProperties);
or the equivalent command
void vkGetPhysicalDeviceExternalFencePropertiesKHR(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
VkExternalFenceProperties* pExternalFenceProperties);
physicalDevice must be a valid VkPhysicalDevice handlepExternalFenceInfo must be a valid pointer to a valid VkPhysicalDeviceExternalFenceInfo structurepExternalFenceProperties must be a valid pointer to a VkExternalFenceProperties structureVkExternalFenceProperties, VkPhysicalDeviceExternalFenceInfo
physicalDevice - the physical device from which to query the fence capabilities.pExternalFenceInfo - a pointer to a VkPhysicalDeviceExternalFenceInfo structure describing the parameters that would be consumed by CreateFence.pExternalFenceProperties - a pointer to a VkExternalFenceProperties structure in which capabilities are returned.public static void nvkGetPhysicalDeviceExternalSemaphoreProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
long pExternalSemaphoreInfo,
long pExternalSemaphoreProperties)
GetPhysicalDeviceExternalSemaphorePropertiespublic static void vkGetPhysicalDeviceExternalSemaphoreProperties(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExternalSemaphoreInfo pExternalSemaphoreInfo,
VkExternalSemaphoreProperties pExternalSemaphoreProperties)
Semaphores may support import and export of their payload to external handles. To query the external handle types supported by semaphores, call:
void vkGetPhysicalDeviceExternalSemaphoreProperties(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
or the equivalent command
void vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
VkPhysicalDevice physicalDevice,
const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
physicalDevice must be a valid VkPhysicalDevice handlepExternalSemaphoreInfo must be a valid pointer to a valid VkPhysicalDeviceExternalSemaphoreInfo structurepExternalSemaphoreProperties must be a valid pointer to a VkExternalSemaphoreProperties structureVkExternalSemaphoreProperties, VkPhysicalDeviceExternalSemaphoreInfo
physicalDevice - the physical device from which to query the semaphore capabilities.pExternalSemaphoreInfo - a pointer to a VkPhysicalDeviceExternalSemaphoreInfo structure describing the parameters that would be consumed by CreateSemaphore.pExternalSemaphoreProperties - a pointer to a VkExternalSemaphoreProperties structure in which capabilities are returned.public static void nvkGetDescriptorSetLayoutSupport(org.lwjgl.vulkan.VkDevice device,
long pCreateInfo,
long pSupport)
GetDescriptorSetLayoutSupportpublic static void vkGetDescriptorSetLayoutSupport(org.lwjgl.vulkan.VkDevice device,
VkDescriptorSetLayoutCreateInfo pCreateInfo,
VkDescriptorSetLayoutSupport pSupport)
To query information about whether a descriptor set layout can be created, call:
void vkGetDescriptorSetLayoutSupport(
VkDevice device,
const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
VkDescriptorSetLayoutSupport* pSupport);
or the equivalent command
void vkGetDescriptorSetLayoutSupportKHR(
VkDevice device,
const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
VkDescriptorSetLayoutSupport* pSupport);
Some implementations have limitations on what fits in a descriptor set which are not easily expressible in terms of existing limits like maxDescriptorSet*, for example if all descriptor types share a limited space in memory but each descriptor is a different size or alignment. This command returns information about whether a descriptor set satisfies this limit. If the descriptor set layout satisfies the VkPhysicalDeviceMaintenance3Properties::maxPerSetDescriptors limit, this command is guaranteed to return TRUE in VkDescriptorSetLayoutSupport::supported. If the descriptor set layout exceeds the VkPhysicalDeviceMaintenance3Properties::maxPerSetDescriptors limit, whether the descriptor set layout is supported is implementation-dependent and may depend on whether the descriptor sizes and alignments cause the layout to exceed an internal limit.
This command does not consider other limits such as maxPerStageDescriptor*, and so a descriptor set layout that is supported according to this command must still satisfy the pipeline layout limits such as maxPerStageDescriptor* in order to be used in a pipeline layout.
This is a VkDevice query rather than VkPhysicalDevice because the answer may depend on enabled features.
device must be a valid VkDevice handlepCreateInfo must be a valid pointer to a valid VkDescriptorSetLayoutCreateInfo structurepSupport must be a valid pointer to a VkDescriptorSetLayoutSupport structureVkDescriptorSetLayoutCreateInfo, VkDescriptorSetLayoutSupport
device - the logical device that would create the descriptor set layout.pCreateInfo - a pointer to a VkDescriptorSetLayoutCreateInfo structure specifying the state of the descriptor set layout object.pSupport - a pointer to a VkDescriptorSetLayoutSupport structure, in which information about support for the descriptor set layout object is returned.public static int vkEnumerateInstanceVersion(int[] pApiVersion)
EnumerateInstanceVersionpublic static void vkGetDeviceGroupPeerMemoryFeatures(org.lwjgl.vulkan.VkDevice device,
int heapIndex,
int localDeviceIndex,
int remoteDeviceIndex,
int[] pPeerMemoryFeatures)
GetDeviceGroupPeerMemoryFeaturespublic static int vkEnumeratePhysicalDeviceGroups(org.lwjgl.vulkan.VkInstance instance,
int[] pPhysicalDeviceGroupCount,
@Nullable
VkPhysicalDeviceGroupProperties.Buffer pPhysicalDeviceGroupProperties)
EnumeratePhysicalDeviceGroupspublic static void vkGetImageSparseMemoryRequirements2(org.lwjgl.vulkan.VkDevice device,
VkImageSparseMemoryRequirementsInfo2 pInfo,
int[] pSparseMemoryRequirementCount,
@Nullable
VkSparseImageMemoryRequirements2.Buffer pSparseMemoryRequirements)
GetImageSparseMemoryRequirements2public static void vkGetPhysicalDeviceQueueFamilyProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
int[] pQueueFamilyPropertyCount,
@Nullable
VkQueueFamilyProperties2.Buffer pQueueFamilyProperties)
GetPhysicalDeviceQueueFamilyProperties2public static void vkGetPhysicalDeviceSparseImageFormatProperties2(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
VkPhysicalDeviceSparseImageFormatInfo2 pFormatInfo,
int[] pPropertyCount,
@Nullable
VkSparseImageFormatProperties2.Buffer pProperties)
GetPhysicalDeviceSparseImageFormatProperties2public static int vkCreateSamplerYcbcrConversion(org.lwjgl.vulkan.VkDevice device,
VkSamplerYcbcrConversionCreateInfo pCreateInfo,
@Nullable
VkAllocationCallbacks pAllocator,
long[] pYcbcrConversion)
CreateSamplerYcbcrConversionpublic static int vkCreateDescriptorUpdateTemplate(org.lwjgl.vulkan.VkDevice device,
VkDescriptorUpdateTemplateCreateInfo pCreateInfo,
@Nullable
VkAllocationCallbacks pAllocator,
long[] pDescriptorUpdateTemplate)
CreateDescriptorUpdateTemplateCopyright LWJGL. All Rights Reserved. License terms.