From 016942f0aaf0917123e18641a6219808a93a5aa5 Mon Sep 17 00:00:00 2001 From: Rua Date: Sun, 1 Aug 2021 16:39:04 +0200 Subject: [PATCH] Update ash and other dependencies (#1653) --- vulkano/Cargo.toml | 4 +- vulkano/autogen/properties.rs | 1 + vulkano/src/device/properties.rs | 7 + vulkano/src/version.rs | 10 +- vulkano/vk.xml | 3547 +++++++++++++++++++++++------- 5 files changed, 2812 insertions(+), 757 deletions(-) diff --git a/vulkano/Cargo.toml b/vulkano/Cargo.toml index f5a755ea..767d4154 100644 --- a/vulkano/Cargo.toml +++ b/vulkano/Cargo.toml @@ -16,7 +16,7 @@ build = "build.rs" [dependencies] # When updating Ash, also update vk.xml to the same Vulkan patch version that Ash uses. # All versions of vk.xml can be found at https://github.com/KhronosGroup/Vulkan-Headers/commits/master/registry/vk.xml. -ash = "0.32.1" +ash = "0.33.0" crossbeam-queue = "0.3" fnv = "1.0" half = "1.7" @@ -27,6 +27,6 @@ smallvec = "1.6" [build-dependencies] heck = "0.3" -indexmap = "1.6" +indexmap = "1.7" regex = "1.5" vk-parse = "0.6" diff --git a/vulkano/autogen/properties.rs b/vulkano/autogen/properties.rs index b59d33d0..7a6ed9a7 100644 --- a/vulkano/autogen/properties.rs +++ b/vulkano/autogen/properties.rs @@ -323,6 +323,7 @@ fn vulkano_type(ty: &str, len: Option<&str>) -> &'static str { match ty { "float" => "f32", "int32_t" => "i32", + "int64_t" => "i64", "size_t" => "usize", "uint8_t" => "u8", "uint32_t" => "u32", diff --git a/vulkano/src/device/properties.rs b/vulkano/src/device/properties.rs index ef5c5f67..4e2dd69d 100644 --- a/vulkano/src/device/properties.rs +++ b/vulkano/src/device/properties.rs @@ -162,6 +162,13 @@ impl FromVulkan for i32 { } } +impl FromVulkan for i64 { + #[inline] + fn from_vulkan(val: i64) -> Option { + Some(val) + } +} + impl FromVulkan for f32 { #[inline] fn from_vulkan(val: f32) -> Option { diff --git a/vulkano/src/version.rs b/vulkano/src/version.rs index 6da3fc42..1575599e 100644 --- a/vulkano/src/version.rs +++ b/vulkano/src/version.rs @@ -43,9 +43,9 @@ impl From for Version { #[inline] fn from(val: u32) -> Self { Version { - major: ash::vk::version_major(val), - minor: ash::vk::version_minor(val), - patch: ash::vk::version_patch(val), + major: ash::vk::api_version_major(val), + minor: ash::vk::api_version_minor(val), + patch: ash::vk::api_version_patch(val), } } } @@ -56,7 +56,9 @@ impl TryFrom for u32 { #[inline] fn try_from(val: Version) -> Result { if val.major <= 0x3ff && val.minor <= 0x3ff && val.patch <= 0xfff { - Ok(ash::vk::make_version(val.major, val.minor, val.patch)) + Ok(ash::vk::make_api_version( + 0, val.major, val.minor, val.patch, + )) } else { Err(()) } diff --git a/vulkano/vk.xml b/vulkano/vk.xml index fa31b42f..81901e61 100644 --- a/vulkano/vk.xml +++ b/vulkano/vk.xml @@ -1,7 +1,7 @@ -Copyright (c) 2015-2020 The Khronos Group Inc. +Copyright 2015-2021 The Khronos Group Inc. SPDX-License-Identifier: Apache-2.0 OR MIT @@ -51,7 +51,7 @@ branch of the member gitlab server. - + @@ -67,13 +67,15 @@ branch of the member gitlab server. - + + + - #include "vk_platform.h" + #include "vulkan/vk_platform.h" WSI extensions @@ -85,6 +87,7 @@ branch of the member gitlab server. + In the current header structure, each platform's interfaces are confined to a platform-specific header (vulkan_xlib.h, @@ -123,40 +126,73 @@ branch of the member gitlab server. + + - #define VK_MAKE_VERSION(major, minor, patch) \ + // DEPRECATED: This define is deprecated. VK_MAKE_API_VERSION should be used instead. +#define VK_MAKE_VERSION(major, minor, patch) \ ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch))) - #define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22) - #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff) - #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff) + // DEPRECATED: This define is deprecated. VK_API_VERSION_MAJOR should be used instead. +#define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22) + // DEPRECATED: This define is deprecated. VK_API_VERSION_MINOR should be used instead. +#define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3FFU) + // DEPRECATED: This define is deprecated. VK_API_VERSION_PATCH should be used instead. +#define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU) + + #define VK_MAKE_API_VERSION(variant, major, minor, patch) \ + ((((uint32_t)(variant)) << 29) | (((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch))) + #define VK_API_VERSION_VARIANT(version) ((uint32_t)(version) >> 29) + #define VK_API_VERSION_MAJOR(version) (((uint32_t)(version) >> 22) & 0x7FU) + #define VK_API_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3FFU) + #define VK_API_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU) // DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead. //#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0) // Patch version should always be set to 0 - // Vulkan 1.0 version number -#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0 - // Vulkan 1.1 version number -#define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)// Patch version should always be set to 0 - // Vulkan 1.2 version number -#define VK_API_VERSION_1_2 VK_MAKE_VERSION(1, 2, 0)// Patch version should always be set to 0 + // Vulkan 1.0 version number +#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0 + // Vulkan 1.1 version number +#define VK_API_VERSION_1_1 VK_MAKE_API_VERSION(0, 1, 1, 0)// Patch version should always be set to 0 + // Vulkan 1.2 version number +#define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 168 +#define VK_HEADER_VERSION 186 // Complete version of this file -#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) +#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION) #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; - -#if !defined(VK_DEFINE_NON_DISPATCHABLE_HANDLE) -#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) - #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object; -#else - #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; -#endif + +#ifndef VK_USE_64_BIT_PTR_DEFINES + #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) + #define VK_USE_64_BIT_PTR_DEFINES 1 + #else + #define VK_USE_64_BIT_PTR_DEFINES 0 + #endif +#endif + +#ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE + #if (VK_USE_64_BIT_PTR_DEFINES==1) + #if (defined(__cplusplus) && (__cplusplus >= 201103L)) || (defined(_MSVC_LANG) && (_MSVC_LANG >= 201103L)) + #define VK_NULL_HANDLE nullptr + #else + #define VK_NULL_HANDLE ((void*)0) + #endif + #else + #define VK_NULL_HANDLE 0ULL + #endif +#endif +#ifndef VK_NULL_HANDLE + #define VK_NULL_HANDLE 0 +#endif + +#ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE + #if (VK_USE_64_BIT_PTR_DEFINES==1) + #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object; + #else + #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; + #endif #endif - - -#define VK_NULL_HANDLE 0 struct ANativeWindow; struct AHardwareBuffer; @@ -170,6 +206,7 @@ typedef void CAMetalLayer; typedef uint32_t VkSampleMask; typedef uint32_t VkBool32; typedef uint32_t VkFlags; + typedef uint64_t VkFlags64; typedef uint64_t VkDeviceSize; typedef uint64_t VkDeviceAddress; @@ -178,7 +215,9 @@ typedef void CAMetalLayer; + + @@ -228,7 +267,7 @@ typedef void CAMetalLayer; typedef VkFlags VkQueryControlFlags; typedef VkFlags VkQueryResultFlags; typedef VkFlags VkShaderModuleCreateFlags; - typedef VkFlags VkEventCreateFlags; + typedef VkFlags VkEventCreateFlags; typedef VkFlags VkCommandPoolCreateFlags; typedef VkFlags VkCommandPoolResetFlags; typedef VkFlags VkCommandBufferResetFlags; @@ -268,6 +307,10 @@ typedef void CAMetalLayer; typedef VkFlags VkPipelineCompilerControlFlagsAMD; typedef VkFlags VkShaderCorePropertiesFlagsAMD; typedef VkFlags VkDeviceDiagnosticsConfigFlagsNV; + typedef VkFlags64 VkAccessFlags2KHR; + typedef VkFlags64 VkPipelineStageFlags2KHR; + typedef VkFlags VkAccelerationStructureMotionInfoFlagsNV; + typedef VkFlags VkAccelerationStructureMotionInstanceFlagsNV; WSI extensions typedef VkFlags VkCompositeAlphaFlagsKHR; @@ -289,6 +332,7 @@ typedef void CAMetalLayer; typedef VkFlags VkImagePipeSurfaceCreateFlagsFUCHSIA; typedef VkFlags VkStreamDescriptorSurfaceCreateFlagsGGP; typedef VkFlags VkHeadlessSurfaceCreateFlagsEXT; + typedef VkFlags VkScreenSurfaceCreateFlagsQNX; typedef VkFlags VkPeerMemoryFeatureFlags; typedef VkFlags VkMemoryAllocateFlags; @@ -338,6 +382,39 @@ typedef void CAMetalLayer; typedef VkFlags VkPipelineRasterizationDepthClipStateCreateFlagsEXT; typedef VkFlags VkSwapchainImageUsageFlagsANDROID; typedef VkFlags VkToolPurposeFlagsEXT; + typedef VkFlags VkSubmitFlagsKHR; + + Video Core extension + typedef VkFlags VkVideoCodecOperationFlagsKHR; + typedef VkFlags VkVideoCapabilitiesFlagsKHR; + typedef VkFlags VkVideoSessionCreateFlagsKHR; + typedef VkFlags VkVideoBeginCodingFlagsKHR; + typedef VkFlags VkVideoEndCodingFlagsKHR; + typedef VkFlags VkVideoCodingQualityPresetFlagsKHR; + typedef VkFlags VkVideoCodingControlFlagsKHR; + + Video Decode Core extension + typedef VkFlags VkVideoDecodeFlagsKHR; + + Video Decode H.264 extension + typedef VkFlags VkVideoDecodeH264FieldLayoutFlagsEXT; + typedef VkFlags VkVideoDecodeH264CreateFlagsEXT; + + Video Decode H.265 extension + typedef VkFlags VkVideoDecodeH265CreateFlagsEXT; + + Video Encode Core extension + typedef VkFlags VkVideoEncodeFlagsKHR; + typedef VkFlags VkVideoEncodeRateControlFlagsKHR; + typedef VkFlags VkVideoEncodeRateControlModeFlagsKHR; + typedef VkFlags VkVideoChromaSubsamplingFlagsKHR; + typedef VkFlags VkVideoComponentBitDepthFlagsKHR; + + Video Encode H.264 extension + typedef VkFlags VkVideoEncodeH264CapabilitiesFlagsEXT; + typedef VkFlags VkVideoEncodeH264InputModeFlagsEXT; + typedef VkFlags VkVideoEncodeH264OutputModeFlagsEXT; + typedef VkFlags VkVideoEncodeH264CreateFlagsEXT; Types which can be void pointers or class pointers, selected at compile time VK_DEFINE_HANDLE(VkInstance) @@ -376,6 +453,8 @@ typedef void CAMetalLayer; VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPerformanceConfigurationINTEL) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPrivateDataSlotEXT) + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuModuleNVX) + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuFunctionNVX) WSI extensions VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR) @@ -385,6 +464,10 @@ typedef void CAMetalLayer; VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugUtilsMessengerEXT) + Video extensions + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionKHR) + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionParametersKHR) + Types generated from corresponding enums tags below @@ -463,6 +546,8 @@ typedef void CAMetalLayer; + + When VkSemaphoreCreateFlagBits is first extended, need to add a type enum tag for it here Extensions @@ -535,6 +620,9 @@ typedef void CAMetalLayer; + + + WSI extensions @@ -596,6 +684,7 @@ typedef void CAMetalLayer; + Enumerated types in the header, but not used by the API @@ -605,6 +694,35 @@ typedef void CAMetalLayer; + Video Core extensions + + + + + + + + + + Video Decode extensions + + + Video H.264 Decode extensions + + + Video H.265 Decode extensions + + Video Encode extensions + + + + + Video H.264 Encode extensions + + + + + The PFN_vk*Function types are used by VkAllocationCallbacks below typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( void* pUserData, @@ -708,15 +826,15 @@ typedef void CAMetalLayer; VkComponentSwizzle a - uint32_t apiVersion - uint32_t driverVersion - uint32_t vendorID - uint32_t deviceID - VkPhysicalDeviceType deviceType - char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE] - uint8_t pipelineCacheUUID[VK_UUID_SIZE] - VkPhysicalDeviceLimits limits - VkPhysicalDeviceSparseProperties sparseProperties + uint32_t apiVersion + uint32_t driverVersion + uint32_t vendorID + uint32_t deviceID + VkPhysicalDeviceType deviceType + char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE] + uint8_t pipelineCacheUUID[VK_UUID_SIZE] + VkPhysicalDeviceLimits limits + VkPhysicalDeviceSparseProperties sparseProperties char extensionName[VK_MAX_EXTENSION_NAME_SIZE]extension name @@ -1262,6 +1380,14 @@ typedef void CAMetalLayer; size_t initialDataSizeSize of initial data to populate cache, in bytes const void* pInitialDataInitial data to populate cache + + The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout. + uint32_t headerSize + VkPipelineCacheHeaderVersion headerVersion + uint32_t vendorID + uint32_t deviceID + uint8_t pipelineCacheUUID[VK_UUID_SIZE] + VkShaderStageFlags stageFlagsWhich stages use the range uint32_t offsetStart of the range, in bytes @@ -1332,7 +1458,7 @@ typedef void CAMetalLayer; VkFramebuffer framebuffer VkRect2D renderArea uint32_t clearValueCount - const VkClearValue* pClearValues + const VkClearValue* pClearValues float float32[4] @@ -1344,13 +1470,13 @@ typedef void CAMetalLayer; uint32_t stencil - VkClearColorValue color + VkClearColorValue color VkClearDepthStencilValue depthStencil VkImageAspectFlags aspectMask uint32_t colorAttachment - VkClearValue clearValue + VkClearValue clearValue VkAttachmentDescriptionFlags flags @@ -1382,8 +1508,8 @@ typedef void CAMetalLayer; uint32_t srcSubpass uint32_t dstSubpass - VkPipelineStageFlags srcStageMask - VkPipelineStageFlags dstStageMask + VkPipelineStageFlags srcStageMask + VkPipelineStageFlags dstStageMask VkAccessFlags srcAccessMaskMemory accesses from the source of the dependency to synchronize VkAccessFlags dstAccessMaskMemory accesses from the destination of the dependency to synchronize VkDependencyFlags dependencyFlags @@ -1467,128 +1593,128 @@ typedef void CAMetalLayer; VkBool32 inheritedQueriesQueries may be inherited from primary to secondary command buffers - VkBool32 residencyStandard2DBlockShapeSparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format) - VkBool32 residencyStandard2DMultisampleBlockShapeSparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format) - VkBool32 residencyStandard3DBlockShapeSparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format) - VkBool32 residencyAlignedMipSizeSparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail - VkBool32 residencyNonResidentStrictSparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded + VkBool32 residencyStandard2DBlockShapeSparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format) + VkBool32 residencyStandard2DMultisampleBlockShapeSparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format) + VkBool32 residencyStandard3DBlockShapeSparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format) + VkBool32 residencyAlignedMipSizeSparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail + VkBool32 residencyNonResidentStrictSparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded resource maximum sizes - uint32_t maxImageDimension1Dmax 1D image dimension - uint32_t maxImageDimension2Dmax 2D image dimension - uint32_t maxImageDimension3Dmax 3D image dimension - uint32_t maxImageDimensionCubemax cubemap image dimension - uint32_t maxImageArrayLayersmax layers for image arrays - uint32_t maxTexelBufferElementsmax texel buffer size (fstexels) - uint32_t maxUniformBufferRangemax uniform buffer range (bytes) - uint32_t maxStorageBufferRangemax storage buffer range (bytes) - uint32_t maxPushConstantsSizemax size of the push constants pool (bytes) + uint32_t maxImageDimension1Dmax 1D image dimension + uint32_t maxImageDimension2Dmax 2D image dimension + uint32_t maxImageDimension3Dmax 3D image dimension + uint32_t maxImageDimensionCubemax cubemap image dimension + uint32_t maxImageArrayLayersmax layers for image arrays + uint32_t maxTexelBufferElementsmax texel buffer size (fstexels) + uint32_t maxUniformBufferRangemax uniform buffer range (bytes) + uint32_t maxStorageBufferRangemax storage buffer range (bytes) + uint32_t maxPushConstantsSizemax size of the push constants pool (bytes) memory limits - uint32_t maxMemoryAllocationCountmax number of device memory allocations supported - uint32_t maxSamplerAllocationCountmax number of samplers that can be allocated on a device - VkDeviceSize bufferImageGranularityGranularity (in bytes) at which buffers and images can be bound to adjacent memory for simultaneous usage - VkDeviceSize sparseAddressSpaceSizeTotal address space available for sparse allocations (bytes) + uint32_t maxMemoryAllocationCountmax number of device memory allocations supported + uint32_t maxSamplerAllocationCountmax number of samplers that can be allocated on a device + VkDeviceSize bufferImageGranularityGranularity (in bytes) at which buffers and images can be bound to adjacent memory for simultaneous usage + VkDeviceSize sparseAddressSpaceSizeTotal address space available for sparse allocations (bytes) descriptor set limits - uint32_t maxBoundDescriptorSetsmax number of descriptors sets that can be bound to a pipeline - uint32_t maxPerStageDescriptorSamplersmax number of samplers allowed per-stage in a descriptor set - uint32_t maxPerStageDescriptorUniformBuffersmax number of uniform buffers allowed per-stage in a descriptor set - uint32_t maxPerStageDescriptorStorageBuffersmax number of storage buffers allowed per-stage in a descriptor set - uint32_t maxPerStageDescriptorSampledImagesmax number of sampled images allowed per-stage in a descriptor set - uint32_t maxPerStageDescriptorStorageImagesmax number of storage images allowed per-stage in a descriptor set - uint32_t maxPerStageDescriptorInputAttachmentsmax number of input attachments allowed per-stage in a descriptor set - uint32_t maxPerStageResourcesmax number of resources allowed by a single stage - uint32_t maxDescriptorSetSamplersmax number of samplers allowed in all stages in a descriptor set - uint32_t maxDescriptorSetUniformBuffersmax number of uniform buffers allowed in all stages in a descriptor set - uint32_t maxDescriptorSetUniformBuffersDynamicmax number of dynamic uniform buffers allowed in all stages in a descriptor set - uint32_t maxDescriptorSetStorageBuffersmax number of storage buffers allowed in all stages in a descriptor set - uint32_t maxDescriptorSetStorageBuffersDynamicmax number of dynamic storage buffers allowed in all stages in a descriptor set - uint32_t maxDescriptorSetSampledImagesmax number of sampled images allowed in all stages in a descriptor set - uint32_t maxDescriptorSetStorageImagesmax number of storage images allowed in all stages in a descriptor set - uint32_t maxDescriptorSetInputAttachmentsmax number of input attachments allowed in all stages in a descriptor set + uint32_t maxBoundDescriptorSetsmax number of descriptors sets that can be bound to a pipeline + uint32_t maxPerStageDescriptorSamplersmax number of samplers allowed per-stage in a descriptor set + uint32_t maxPerStageDescriptorUniformBuffersmax number of uniform buffers allowed per-stage in a descriptor set + uint32_t maxPerStageDescriptorStorageBuffersmax number of storage buffers allowed per-stage in a descriptor set + uint32_t maxPerStageDescriptorSampledImagesmax number of sampled images allowed per-stage in a descriptor set + uint32_t maxPerStageDescriptorStorageImagesmax number of storage images allowed per-stage in a descriptor set + uint32_t maxPerStageDescriptorInputAttachmentsmax number of input attachments allowed per-stage in a descriptor set + uint32_t maxPerStageResourcesmax number of resources allowed by a single stage + uint32_t maxDescriptorSetSamplersmax number of samplers allowed in all stages in a descriptor set + uint32_t maxDescriptorSetUniformBuffersmax number of uniform buffers allowed in all stages in a descriptor set + uint32_t maxDescriptorSetUniformBuffersDynamicmax number of dynamic uniform buffers allowed in all stages in a descriptor set + uint32_t maxDescriptorSetStorageBuffersmax number of storage buffers allowed in all stages in a descriptor set + uint32_t maxDescriptorSetStorageBuffersDynamicmax number of dynamic storage buffers allowed in all stages in a descriptor set + uint32_t maxDescriptorSetSampledImagesmax number of sampled images allowed in all stages in a descriptor set + uint32_t maxDescriptorSetStorageImagesmax number of storage images allowed in all stages in a descriptor set + uint32_t maxDescriptorSetInputAttachmentsmax number of input attachments allowed in all stages in a descriptor set vertex stage limits - uint32_t maxVertexInputAttributesmax number of vertex input attribute slots - uint32_t maxVertexInputBindingsmax number of vertex input binding slots - uint32_t maxVertexInputAttributeOffsetmax vertex input attribute offset added to vertex buffer offset - uint32_t maxVertexInputBindingStridemax vertex input binding stride - uint32_t maxVertexOutputComponentsmax number of output components written by vertex shader + uint32_t maxVertexInputAttributesmax number of vertex input attribute slots + uint32_t maxVertexInputBindingsmax number of vertex input binding slots + uint32_t maxVertexInputAttributeOffsetmax vertex input attribute offset added to vertex buffer offset + uint32_t maxVertexInputBindingStridemax vertex input binding stride + uint32_t maxVertexOutputComponentsmax number of output components written by vertex shader tessellation control stage limits - uint32_t maxTessellationGenerationLevelmax level supported by tessellation primitive generator - uint32_t maxTessellationPatchSizemax patch size (vertices) - uint32_t maxTessellationControlPerVertexInputComponentsmax number of input components per-vertex in TCS - uint32_t maxTessellationControlPerVertexOutputComponentsmax number of output components per-vertex in TCS - uint32_t maxTessellationControlPerPatchOutputComponentsmax number of output components per-patch in TCS - uint32_t maxTessellationControlTotalOutputComponentsmax total number of per-vertex and per-patch output components in TCS + uint32_t maxTessellationGenerationLevelmax level supported by tessellation primitive generator + uint32_t maxTessellationPatchSizemax patch size (vertices) + uint32_t maxTessellationControlPerVertexInputComponentsmax number of input components per-vertex in TCS + uint32_t maxTessellationControlPerVertexOutputComponentsmax number of output components per-vertex in TCS + uint32_t maxTessellationControlPerPatchOutputComponentsmax number of output components per-patch in TCS + uint32_t maxTessellationControlTotalOutputComponentsmax total number of per-vertex and per-patch output components in TCS tessellation evaluation stage limits - uint32_t maxTessellationEvaluationInputComponentsmax number of input components per vertex in TES - uint32_t maxTessellationEvaluationOutputComponentsmax number of output components per vertex in TES + uint32_t maxTessellationEvaluationInputComponentsmax number of input components per vertex in TES + uint32_t maxTessellationEvaluationOutputComponentsmax number of output components per vertex in TES geometry stage limits - uint32_t maxGeometryShaderInvocationsmax invocation count supported in geometry shader - uint32_t maxGeometryInputComponentsmax number of input components read in geometry stage - uint32_t maxGeometryOutputComponentsmax number of output components written in geometry stage - uint32_t maxGeometryOutputVerticesmax number of vertices that can be emitted in geometry stage - uint32_t maxGeometryTotalOutputComponentsmax total number of components (all vertices) written in geometry stage + uint32_t maxGeometryShaderInvocationsmax invocation count supported in geometry shader + uint32_t maxGeometryInputComponentsmax number of input components read in geometry stage + uint32_t maxGeometryOutputComponentsmax number of output components written in geometry stage + uint32_t maxGeometryOutputVerticesmax number of vertices that can be emitted in geometry stage + uint32_t maxGeometryTotalOutputComponentsmax total number of components (all vertices) written in geometry stage fragment stage limits - uint32_t maxFragmentInputComponentsmax number of input components read in fragment stage - uint32_t maxFragmentOutputAttachmentsmax number of output attachments written in fragment stage - uint32_t maxFragmentDualSrcAttachmentsmax number of output attachments written when using dual source blending - uint32_t maxFragmentCombinedOutputResourcesmax total number of storage buffers, storage images and output buffers + uint32_t maxFragmentInputComponentsmax number of input components read in fragment stage + uint32_t maxFragmentOutputAttachmentsmax number of output attachments written in fragment stage + uint32_t maxFragmentDualSrcAttachmentsmax number of output attachments written when using dual source blending + uint32_t maxFragmentCombinedOutputResourcesmax total number of storage buffers, storage images and output buffers compute stage limits - uint32_t maxComputeSharedMemorySizemax total storage size of work group local storage (bytes) - uint32_t maxComputeWorkGroupCount[3]max num of compute work groups that may be dispatched by a single command (x,y,z) - uint32_t maxComputeWorkGroupInvocationsmax total compute invocations in a single local work group - uint32_t maxComputeWorkGroupSize[3]max local size of a compute work group (x,y,z) - uint32_t subPixelPrecisionBitsnumber bits of subpixel precision in screen x and y - uint32_t subTexelPrecisionBitsnumber bits of precision for selecting texel weights - uint32_t mipmapPrecisionBitsnumber bits of precision for selecting mipmap weights - uint32_t maxDrawIndexedIndexValuemax index value for indexed draw calls (for 32-bit indices) - uint32_t maxDrawIndirectCountmax draw count for indirect draw calls - float maxSamplerLodBiasmax absolute sampler LOD bias - float maxSamplerAnisotropymax degree of sampler anisotropy - uint32_t maxViewportsmax number of active viewports - uint32_t maxViewportDimensions[2]max viewport dimensions (x,y) - float viewportBoundsRange[2]viewport bounds range (min,max) - uint32_t viewportSubPixelBitsnumber bits of subpixel precision for viewport - size_t minMemoryMapAlignmentmin required alignment of pointers returned by MapMemory (bytes) - VkDeviceSize minTexelBufferOffsetAlignmentmin required alignment for texel buffer offsets (bytes) - VkDeviceSize minUniformBufferOffsetAlignmentmin required alignment for uniform buffer sizes and offsets (bytes) - VkDeviceSize minStorageBufferOffsetAlignmentmin required alignment for storage buffer offsets (bytes) - int32_t minTexelOffsetmin texel offset for OpTextureSampleOffset - uint32_t maxTexelOffsetmax texel offset for OpTextureSampleOffset - int32_t minTexelGatherOffsetmin texel offset for OpTextureGatherOffset - uint32_t maxTexelGatherOffsetmax texel offset for OpTextureGatherOffset - float minInterpolationOffsetfurthest negative offset for interpolateAtOffset - float maxInterpolationOffsetfurthest positive offset for interpolateAtOffset - uint32_t subPixelInterpolationOffsetBitsnumber of subpixel bits for interpolateAtOffset - uint32_t maxFramebufferWidthmax width for a framebuffer - uint32_t maxFramebufferHeightmax height for a framebuffer - uint32_t maxFramebufferLayersmax layer count for a layered framebuffer - VkSampleCountFlags framebufferColorSampleCountssupported color sample counts for a framebuffer - VkSampleCountFlags framebufferDepthSampleCountssupported depth sample counts for a framebuffer - VkSampleCountFlags framebufferStencilSampleCountssupported stencil sample counts for a framebuffer - VkSampleCountFlags framebufferNoAttachmentsSampleCountssupported sample counts for a subpass which uses no attachments - uint32_t maxColorAttachmentsmax number of color attachments per subpass - VkSampleCountFlags sampledImageColorSampleCountssupported color sample counts for a non-integer sampled image - VkSampleCountFlags sampledImageIntegerSampleCountssupported sample counts for an integer image - VkSampleCountFlags sampledImageDepthSampleCountssupported depth sample counts for a sampled image - VkSampleCountFlags sampledImageStencilSampleCountssupported stencil sample counts for a sampled image - VkSampleCountFlags storageImageSampleCountssupported sample counts for a storage image - uint32_t maxSampleMaskWordsmax number of sample mask words - VkBool32 timestampComputeAndGraphicstimestamps on graphics and compute queues - float timestampPeriodnumber of nanoseconds it takes for timestamp query value to increment by 1 - uint32_t maxClipDistancesmax number of clip distances - uint32_t maxCullDistancesmax number of cull distances - uint32_t maxCombinedClipAndCullDistancesmax combined number of user clipping - uint32_t discreteQueuePrioritiesdistinct queue priorities available - float pointSizeRange[2]range (min,max) of supported point sizes - float lineWidthRange[2]range (min,max) of supported line widths - float pointSizeGranularitygranularity of supported point sizes - float lineWidthGranularitygranularity of supported line widths - VkBool32 strictLinesline rasterization follows preferred rules - VkBool32 standardSampleLocationssupports standard sample locations for all supported sample counts - VkDeviceSize optimalBufferCopyOffsetAlignmentoptimal offset of buffer copies - VkDeviceSize optimalBufferCopyRowPitchAlignmentoptimal pitch of buffer copies - VkDeviceSize nonCoherentAtomSizeminimum size and alignment for non-coherent host-mapped device memory access + uint32_t maxComputeSharedMemorySizemax total storage size of work group local storage (bytes) + uint32_t maxComputeWorkGroupCount[3]max num of compute work groups that may be dispatched by a single command (x,y,z) + uint32_t maxComputeWorkGroupInvocationsmax total compute invocations in a single local work group + uint32_t maxComputeWorkGroupSize[3]max local size of a compute work group (x,y,z) + uint32_t subPixelPrecisionBitsnumber bits of subpixel precision in screen x and y + uint32_t subTexelPrecisionBitsnumber bits of precision for selecting texel weights + uint32_t mipmapPrecisionBitsnumber bits of precision for selecting mipmap weights + uint32_t maxDrawIndexedIndexValuemax index value for indexed draw calls (for 32-bit indices) + uint32_t maxDrawIndirectCountmax draw count for indirect draw calls + float maxSamplerLodBiasmax absolute sampler LOD bias + float maxSamplerAnisotropymax degree of sampler anisotropy + uint32_t maxViewportsmax number of active viewports + uint32_t maxViewportDimensions[2]max viewport dimensions (x,y) + float viewportBoundsRange[2]viewport bounds range (min,max) + uint32_t viewportSubPixelBitsnumber bits of subpixel precision for viewport + size_t minMemoryMapAlignmentmin required alignment of pointers returned by MapMemory (bytes) + VkDeviceSize minTexelBufferOffsetAlignmentmin required alignment for texel buffer offsets (bytes) + VkDeviceSize minUniformBufferOffsetAlignmentmin required alignment for uniform buffer sizes and offsets (bytes) + VkDeviceSize minStorageBufferOffsetAlignmentmin required alignment for storage buffer offsets (bytes) + int32_t minTexelOffsetmin texel offset for OpTextureSampleOffset + uint32_t maxTexelOffsetmax texel offset for OpTextureSampleOffset + int32_t minTexelGatherOffsetmin texel offset for OpTextureGatherOffset + uint32_t maxTexelGatherOffsetmax texel offset for OpTextureGatherOffset + float minInterpolationOffsetfurthest negative offset for interpolateAtOffset + float maxInterpolationOffsetfurthest positive offset for interpolateAtOffset + uint32_t subPixelInterpolationOffsetBitsnumber of subpixel bits for interpolateAtOffset + uint32_t maxFramebufferWidthmax width for a framebuffer + uint32_t maxFramebufferHeightmax height for a framebuffer + uint32_t maxFramebufferLayersmax layer count for a layered framebuffer + VkSampleCountFlags framebufferColorSampleCountssupported color sample counts for a framebuffer + VkSampleCountFlags framebufferDepthSampleCountssupported depth sample counts for a framebuffer + VkSampleCountFlags framebufferStencilSampleCountssupported stencil sample counts for a framebuffer + VkSampleCountFlags framebufferNoAttachmentsSampleCountssupported sample counts for a subpass which uses no attachments + uint32_t maxColorAttachmentsmax number of color attachments per subpass + VkSampleCountFlags sampledImageColorSampleCountssupported color sample counts for a non-integer sampled image + VkSampleCountFlags sampledImageIntegerSampleCountssupported sample counts for an integer image + VkSampleCountFlags sampledImageDepthSampleCountssupported depth sample counts for a sampled image + VkSampleCountFlags sampledImageStencilSampleCountssupported stencil sample counts for a sampled image + VkSampleCountFlags storageImageSampleCountssupported sample counts for a storage image + uint32_t maxSampleMaskWordsmax number of sample mask words + VkBool32 timestampComputeAndGraphicstimestamps on graphics and compute queues + float timestampPeriodnumber of nanoseconds it takes for timestamp query value to increment by 1 + uint32_t maxClipDistancesmax number of clip distances + uint32_t maxCullDistancesmax number of cull distances + uint32_t maxCombinedClipAndCullDistancesmax combined number of user clipping + uint32_t discreteQueuePrioritiesdistinct queue priorities available + float pointSizeRange[2]range (min,max) of supported point sizes + float lineWidthRange[2]range (min,max) of supported line widths + float pointSizeGranularitygranularity of supported point sizes + float lineWidthGranularitygranularity of supported line widths + VkBool32 strictLinesline rasterization follows preferred rules + VkBool32 standardSampleLocationssupports standard sample locations for all supported sample counts + VkDeviceSize optimalBufferCopyOffsetAlignmentoptimal offset of buffer copies + VkDeviceSize optimalBufferCopyRowPitchAlignmentoptimal pitch of buffer copies + VkDeviceSize nonCoherentAtomSizeminimum size and alignment for non-coherent host-mapped device memory access VkStructureType sType @@ -1632,6 +1758,15 @@ typedef void CAMetalLayer; uint32_t y uint32_t z + + uint32_t firstVertex + uint32_t vertexCount + + + uint32_t firstIndex + uint32_t indexCount + int32_t vertexOffset + VkStructureType sType const void* pNext @@ -1708,10 +1843,10 @@ typedef void CAMetalLayer; VkExtent2D minImageExtentSupported minimum image width and height for the surface VkExtent2D maxImageExtentSupported maximum image width and height for the surface uint32_t maxImageArrayLayersSupported maximum number of image layers for the surface - VkSurfaceTransformFlagsKHR supportedTransforms1 or more bits representing the transforms supported + VkSurfaceTransformFlagsKHR supportedTransforms1 or more bits representing the transforms supported VkSurfaceTransformFlagBitsKHR currentTransformThe surface's current transform relative to the device's natural orientation - VkCompositeAlphaFlagsKHR supportedCompositeAlpha1 or more bits representing the alpha compositing modes supported - VkImageUsageFlags supportedUsageFlagsSupported image usage flags for the surface + VkCompositeAlphaFlagsKHR supportedCompositeAlpha1 or more bits representing the alpha compositing modes supported + VkImageUsageFlags supportedUsageFlagsSupported image usage flags for the surface VkStructureType sType @@ -1772,6 +1907,13 @@ typedef void CAMetalLayer; VkStreamDescriptorSurfaceCreateFlagsGGP flags GgpStreamDescriptor streamDescriptor + + VkStructureType sType + const void* pNext + VkScreenSurfaceCreateFlagsQNX flags + struct _screen_context* context + struct _screen_window* window + VkFormat formatSupported pair of rendering format VkColorSpaceKHR colorSpaceand color space for the surface @@ -1836,14 +1978,14 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext VkDebugReportObjectTypeEXT objectTypeThe type of the object - uint64_t objectThe handle of the object, cast to uint64_t + uint64_t objectThe handle of the object, cast to uint64_t const char* pObjectNameName to apply to the object VkStructureType sType const void* pNext VkDebugReportObjectTypeEXT objectTypeThe type of the object - uint64_t objectThe handle of the object, cast to uint64_t + uint64_t objectThe handle of the object, cast to uint64_t uint64_t tagNameThe name of the tag to set on the object size_t tagSizeThe length in bytes of the tag data const void* pTagTag data to attach to the object @@ -1898,7 +2040,7 @@ typedef void CAMetalLayer; const SECURITY_ATTRIBUTES* pAttributes DWORD dwAccess - + VkStructureType sType const void* pNext uint32_t acquireCount @@ -1932,15 +2074,20 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxGraphicsShaderGroupCount - uint32_t maxIndirectSequenceCount - uint32_t maxIndirectCommandsTokenCount - uint32_t maxIndirectCommandsStreamCount - uint32_t maxIndirectCommandsTokenOffset - uint32_t maxIndirectCommandsStreamStride - uint32_t minSequencesCountBufferOffsetAlignment - uint32_t minSequencesIndexBufferOffsetAlignment - uint32_t minIndirectCommandsBufferOffsetAlignment + uint32_t maxGraphicsShaderGroupCount + uint32_t maxIndirectSequenceCount + uint32_t maxIndirectCommandsTokenCount + uint32_t maxIndirectCommandsStreamCount + uint32_t maxIndirectCommandsTokenOffset + uint32_t maxIndirectCommandsStreamStride + uint32_t minSequencesCountBufferOffsetAlignment + uint32_t minSequencesIndexBufferOffsetAlignment + uint32_t minIndirectCommandsBufferOffsetAlignment + + + VkStructureType sType + void* pNext + uint32_t maxMultiDrawCount VkStructureType sType @@ -1998,7 +2145,7 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext - VkIndirectCommandsLayoutUsageFlagsNV flags + VkIndirectCommandsLayoutUsageFlagsNV flags VkPipelineBindPoint pipelineBindPoint uint32_t tokenCount const VkIndirectCommandsLayoutTokenNV* pTokens @@ -2039,7 +2186,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkPhysicalDeviceProperties properties + VkPhysicalDeviceProperties properties @@ -2095,7 +2242,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxPushDescriptors + uint32_t maxPushDescriptors uint8_t major @@ -2107,10 +2254,10 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkDriverId driverID - char driverName[VK_MAX_DRIVER_NAME_SIZE] - char driverInfo[VK_MAX_DRIVER_INFO_SIZE] - VkConformanceVersion conformanceVersion + VkDriverId driverID + char driverName[VK_MAX_DRIVER_NAME_SIZE] + char driverInfo[VK_MAX_DRIVER_INFO_SIZE] + VkConformanceVersion conformanceVersion @@ -2172,11 +2319,11 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint8_t deviceUUID[VK_UUID_SIZE] - uint8_t driverUUID[VK_UUID_SIZE] - uint8_t deviceLUID[VK_LUID_SIZE] - uint32_t deviceNodeMask - VkBool32 deviceLUIDValid + uint8_t deviceUUID[VK_UUID_SIZE] + uint8_t driverUUID[VK_UUID_SIZE] + uint8_t deviceLUID[VK_LUID_SIZE] + uint32_t deviceNodeMask + VkBool32 deviceLUIDValid @@ -2211,6 +2358,23 @@ typedef void CAMetalLayer; DWORD dwAccess LPCWSTR name + + VkStructureType sType + const void* pNext + VkExternalMemoryHandleTypeFlagBits handleType + zx_handle_t handle + + + VkStructureType sType + void* pNext + uint32_t memoryTypeBits + + + VkStructureType sType + const void* pNext + VkDeviceMemory memory + VkExternalMemoryHandleTypeFlagBits handleType + VkStructureType sType void* pNext @@ -2239,7 +2403,7 @@ typedef void CAMetalLayer; VkDeviceMemory memory VkExternalMemoryHandleTypeFlagBits handleType - + VkStructureType sType const void* pNext uint32_t acquireCount @@ -2314,6 +2478,20 @@ typedef void CAMetalLayer; VkSemaphore semaphore VkExternalSemaphoreHandleTypeFlagBits handleType + + VkStructureType sType + const void* pNext + VkSemaphore semaphore + VkSemaphoreImportFlags flags + VkExternalSemaphoreHandleTypeFlagBits handleType + zx_handle_t zirconHandle + + + VkStructureType sType + const void* pNext + VkSemaphore semaphore + VkExternalSemaphoreHandleTypeFlagBits handleType + VkStructureType sType const void* pNext @@ -2381,8 +2559,8 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxMultiviewViewCountmax number of views in a subpass - uint32_t maxMultiviewInstanceIndexmax instance index for a draw in a multiview subpass + uint32_t maxMultiviewViewCountmax number of views in a subpass + uint32_t maxMultiviewInstanceIndexmax instance index for a draw in a multiview subpass @@ -2405,10 +2583,10 @@ typedef void CAMetalLayer; VkExtent2D minImageExtentSupported minimum image width and height for the surface VkExtent2D maxImageExtentSupported maximum image width and height for the surface uint32_t maxImageArrayLayersSupported maximum number of image layers for the surface - VkSurfaceTransformFlagsKHR supportedTransforms1 or more bits representing the transforms supported + VkSurfaceTransformFlagsKHR supportedTransforms1 or more bits representing the transforms supported VkSurfaceTransformFlagBitsKHR currentTransformThe surface's current transform relative to the device's natural orientation - VkCompositeAlphaFlagsKHR supportedCompositeAlpha1 or more bits representing the alpha compositing modes supported - VkImageUsageFlags supportedUsageFlagsSupported image usage flags for the surface + VkCompositeAlphaFlagsKHR supportedCompositeAlpha1 or more bits representing the alpha compositing modes supported + VkImageUsageFlags supportedUsageFlagsSupported image usage flags for the surface VkSurfaceCounterFlagsEXT supportedSurfaceCounters @@ -2512,7 +2690,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + void* pNext uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE] VkDeviceGroupPresentModeFlagsKHR modes @@ -2581,6 +2759,22 @@ typedef void CAMetalLayer; float x float y + + VkStructureType sType + void* pNext + VkBool32 presentIdPresent ID in VkPresentInfoKHR + + + VkStructureType sType + const void* pNext + uint32_t swapchainCountCopy of VkPresentInfoKHR::swapchainCount + const uint64_t* pPresentIdsPresent ID values for each swapchain + + + VkStructureType sType + void* pNext + VkBool32 presentWaitvkWaitForPresentKHR is supported + Display primary in chromaticity coordinates VkStructureType sType @@ -2671,7 +2865,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxDiscardRectanglesmax number of active discard rectangles + uint32_t maxDiscardRectanglesmax number of active discard rectangles VkStructureType sType @@ -2684,7 +2878,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkBool32 perViewPositionAllComponents + VkBool32 perViewPositionAllComponents uint32_t subpass @@ -2757,10 +2951,10 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t subgroupSizeThe size of a subgroup for this queue. - VkShaderStageFlags supportedStagesBitfield of what shader stages support subgroup operations - VkSubgroupFeatureFlags supportedOperationsBitfield of what subgroup operations are supported. - VkBool32 quadOperationsInAllStagesFlag to specify whether quad operations are available in all stages. + uint32_t subgroupSizeThe size of a subgroup for this queue. + VkShaderStageFlags supportedStagesBitfield of what shader stages support subgroup operations + VkSubgroupFeatureFlags supportedOperationsBitfield of what subgroup operations are supported. + VkBool32 quadOperationsInAllStagesFlag to specify whether quad operations are available in all stages. VkStructureType sType @@ -2801,7 +2995,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkPointClippingBehavior pointClippingBehavior + VkPointClippingBehavior pointClippingBehavior @@ -2898,7 +3092,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkBool32 protectedNoFault + VkBool32 protectedNoFault VkStructureType sType @@ -2917,15 +3111,15 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkBool32 filterMinmaxSingleComponentFormats - VkBool32 filterMinmaxImageComponentMapping + VkBool32 filterMinmaxSingleComponentFormats + VkBool32 filterMinmaxImageComponentMapping float x float y - + VkStructureType sType const void* pNext VkSampleCountFlagBits sampleLocationsPerPixel @@ -2958,11 +3152,11 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkSampleCountFlags sampleLocationSampleCounts - VkExtent2D maxSampleLocationGridSize - float sampleLocationCoordinateRange[2] - uint32_t sampleLocationSubPixelBits - VkBool32 variableSampleLocations + VkSampleCountFlags sampleLocationSampleCounts + VkExtent2D maxSampleLocationGridSize + float sampleLocationCoordinateRange[2] + uint32_t sampleLocationSubPixelBits + VkBool32 variableSampleLocations VkStructureType sType @@ -2980,15 +3174,20 @@ typedef void CAMetalLayer; void* pNext VkBool32 advancedBlendCoherentOperations + + VkStructureType sType + void* pNext + VkBool32 multiDraw + VkStructureType sType void* pNext - uint32_t advancedBlendMaxColorAttachments - VkBool32 advancedBlendIndependentBlend - VkBool32 advancedBlendNonPremultipliedSrcColor - VkBool32 advancedBlendNonPremultipliedDstColor - VkBool32 advancedBlendCorrelatedOverlap - VkBool32 advancedBlendAllOperations + uint32_t advancedBlendMaxColorAttachments + VkBool32 advancedBlendIndependentBlend + VkBool32 advancedBlendNonPremultipliedSrcColor + VkBool32 advancedBlendNonPremultipliedDstColor + VkBool32 advancedBlendCorrelatedOverlap + VkBool32 advancedBlendAllOperations VkStructureType sType @@ -3006,11 +3205,11 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxInlineUniformBlockSize - uint32_t maxPerStageDescriptorInlineUniformBlocks - uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks - uint32_t maxDescriptorSetInlineUniformBlocks - uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks + uint32_t maxInlineUniformBlockSize + uint32_t maxPerStageDescriptorInlineUniformBlocks + uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks + uint32_t maxDescriptorSetInlineUniformBlocks + uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks VkStructureType sType @@ -3054,8 +3253,8 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxPerSetDescriptors - VkDeviceSize maxMemoryAllocationSize + uint32_t maxPerSetDescriptors + VkDeviceSize maxMemoryAllocationSize @@ -3081,23 +3280,23 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkShaderFloatControlsIndependence denormBehaviorIndependence - VkShaderFloatControlsIndependence roundingModeIndependence - VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf - VkBool32 shaderSignedZeroInfNanPreserveFloat32An implementation can preserve signed zero, nan, inf - VkBool32 shaderSignedZeroInfNanPreserveFloat64An implementation can preserve signed zero, nan, inf - VkBool32 shaderDenormPreserveFloat16An implementation can preserve denormals - VkBool32 shaderDenormPreserveFloat32An implementation can preserve denormals - VkBool32 shaderDenormPreserveFloat64An implementation can preserve denormals - VkBool32 shaderDenormFlushToZeroFloat16An implementation can flush to zero denormals - VkBool32 shaderDenormFlushToZeroFloat32An implementation can flush to zero denormals - VkBool32 shaderDenormFlushToZeroFloat64An implementation can flush to zero denormals - VkBool32 shaderRoundingModeRTEFloat16An implementation can support RTE - VkBool32 shaderRoundingModeRTEFloat32An implementation can support RTE - VkBool32 shaderRoundingModeRTEFloat64An implementation can support RTE - VkBool32 shaderRoundingModeRTZFloat16An implementation can support RTZ - VkBool32 shaderRoundingModeRTZFloat32An implementation can support RTZ - VkBool32 shaderRoundingModeRTZFloat64An implementation can support RTZ + VkShaderFloatControlsIndependence denormBehaviorIndependence + VkShaderFloatControlsIndependence roundingModeIndependence + VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf + VkBool32 shaderSignedZeroInfNanPreserveFloat32An implementation can preserve signed zero, nan, inf + VkBool32 shaderSignedZeroInfNanPreserveFloat64An implementation can preserve signed zero, nan, inf + VkBool32 shaderDenormPreserveFloat16An implementation can preserve denormals + VkBool32 shaderDenormPreserveFloat32An implementation can preserve denormals + VkBool32 shaderDenormPreserveFloat64An implementation can preserve denormals + VkBool32 shaderDenormFlushToZeroFloat16An implementation can flush to zero denormals + VkBool32 shaderDenormFlushToZeroFloat32An implementation can flush to zero denormals + VkBool32 shaderDenormFlushToZeroFloat64An implementation can flush to zero denormals + VkBool32 shaderRoundingModeRTEFloat16An implementation can support RTE + VkBool32 shaderRoundingModeRTEFloat32An implementation can support RTE + VkBool32 shaderRoundingModeRTEFloat64An implementation can support RTE + VkBool32 shaderRoundingModeRTZFloat16An implementation can support RTZ + VkBool32 shaderRoundingModeRTZFloat32An implementation can support RTZ + VkBool32 shaderRoundingModeRTZFloat64An implementation can support RTZ @@ -3150,18 +3349,29 @@ typedef void CAMetalLayer; const void* pNext VkQueueGlobalPriorityEXT globalPriority + + VkStructureType sType + void* pNext + VkBool32 globalPriorityQuery + + + VkStructureType sType + void* pNext + uint32_t priorityCount + VkQueueGlobalPriorityEXT priorities[VK_MAX_GLOBAL_PRIORITY_SIZE_EXT] + VkStructureType sType const void* pNext VkObjectType objectType - uint64_t objectHandle + uint64_t objectHandle const char* pObjectName VkStructureType sType const void* pNext VkObjectType objectType - uint64_t objectHandle + uint64_t objectHandle uint64_t tagName size_t tagSize const void* pTag @@ -3209,7 +3419,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + void* pNext VkDeviceMemoryReportFlagsEXT flags VkDeviceMemoryReportEventTypeEXT type uint64_t memoryObjectId @@ -3232,20 +3442,20 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkDeviceSize minImportedHostPointerAlignment + VkDeviceSize minImportedHostPointerAlignment VkStructureType sType void* pNext - float primitiveOverestimationSizeThe size in pixels the primitive is enlarged at each edge during conservative rasterization - float maxExtraPrimitiveOverestimationSizeThe maximum additional overestimation the client can specify in the pipeline state - float extraPrimitiveOverestimationSizeGranularityThe granularity of extra overestimation sizes the implementations supports between 0 and maxExtraOverestimationSize - VkBool32 primitiveUnderestimationtrue if the implementation supports conservative rasterization underestimation mode - VkBool32 conservativePointAndLineRasterizationtrue if conservative rasterization also applies to points and lines - VkBool32 degenerateTrianglesRasterizedtrue if degenerate triangles (those with zero area after snap) are rasterized - VkBool32 degenerateLinesRasterizedtrue if degenerate lines (those with zero length after snap) are rasterized - VkBool32 fullyCoveredFragmentShaderInputVariabletrue if the implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader input variable - VkBool32 conservativeRasterizationPostDepthCoveragetrue if the implementation supports both conservative rasterization and post depth coverage sample coverage mask + float primitiveOverestimationSizeThe size in pixels the primitive is enlarged at each edge during conservative rasterization + float maxExtraPrimitiveOverestimationSizeThe maximum additional overestimation the client can specify in the pipeline state + float extraPrimitiveOverestimationSizeGranularityThe granularity of extra overestimation sizes the implementations supports between 0 and maxExtraOverestimationSize + VkBool32 primitiveUnderestimationtrue if the implementation supports conservative rasterization underestimation mode + VkBool32 conservativePointAndLineRasterizationtrue if conservative rasterization also applies to points and lines + VkBool32 degenerateTrianglesRasterizedtrue if degenerate triangles (those with zero area after snap) are rasterized + VkBool32 degenerateLinesRasterizedtrue if degenerate lines (those with zero length after snap) are rasterized + VkBool32 fullyCoveredFragmentShaderInputVariabletrue if the implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader input variable + VkBool32 conservativeRasterizationPostDepthCoveragetrue if the implementation supports both conservative rasterization and post depth coverage sample coverage mask VkStructureType sType @@ -3255,26 +3465,26 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t shaderEngineCountnumber of shader engines - uint32_t shaderArraysPerEngineCountnumber of shader arrays - uint32_t computeUnitsPerShaderArraynumber of physical CUs per shader array - uint32_t simdPerComputeUnitnumber of SIMDs per compute unit - uint32_t wavefrontsPerSimdnumber of wavefront slots in each SIMD - uint32_t wavefrontSizemaximum number of threads per wavefront - uint32_t sgprsPerSimdnumber of physical SGPRs per SIMD - uint32_t minSgprAllocationminimum number of SGPRs that can be allocated by a wave - uint32_t maxSgprAllocationnumber of available SGPRs - uint32_t sgprAllocationGranularitySGPRs are allocated in groups of this size - uint32_t vgprsPerSimdnumber of physical VGPRs per SIMD - uint32_t minVgprAllocationminimum number of VGPRs that can be allocated by a wave - uint32_t maxVgprAllocationnumber of available VGPRs - uint32_t vgprAllocationGranularityVGPRs are allocated in groups of this size + uint32_t shaderEngineCountnumber of shader engines + uint32_t shaderArraysPerEngineCountnumber of shader arrays + uint32_t computeUnitsPerShaderArraynumber of physical CUs per shader array + uint32_t simdPerComputeUnitnumber of SIMDs per compute unit + uint32_t wavefrontsPerSimdnumber of wavefront slots in each SIMD + uint32_t wavefrontSizemaximum number of threads per wavefront + uint32_t sgprsPerSimdnumber of physical SGPRs per SIMD + uint32_t minSgprAllocationminimum number of SGPRs that can be allocated by a wave + uint32_t maxSgprAllocationnumber of available SGPRs + uint32_t sgprAllocationGranularitySGPRs are allocated in groups of this size + uint32_t vgprsPerSimdnumber of physical VGPRs per SIMD + uint32_t minVgprAllocationminimum number of VGPRs that can be allocated by a wave + uint32_t maxVgprAllocationnumber of available VGPRs + uint32_t vgprAllocationGranularityVGPRs are allocated in groups of this size VkStructureType sType void* pNextPointer to next structure - VkShaderCorePropertiesFlagsAMD shaderCoreFeaturesfeatures supported by the shader core - uint32_t activeComputeUnitCountnumber of active compute units across all shader engines/arrays + VkShaderCorePropertiesFlagsAMD shaderCoreFeaturesfeatures supported by the shader core + uint32_t activeComputeUnitCountnumber of active compute units across all shader engines/arrays VkStructureType sType @@ -3311,29 +3521,29 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxUpdateAfterBindDescriptorsInAllPools - VkBool32 shaderUniformBufferArrayNonUniformIndexingNative - VkBool32 shaderSampledImageArrayNonUniformIndexingNative - VkBool32 shaderStorageBufferArrayNonUniformIndexingNative - VkBool32 shaderStorageImageArrayNonUniformIndexingNative - VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative - VkBool32 robustBufferAccessUpdateAfterBind - VkBool32 quadDivergentImplicitLod - uint32_t maxPerStageDescriptorUpdateAfterBindSamplers - uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers - uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers - uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages - uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages - uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments - uint32_t maxPerStageUpdateAfterBindResources - uint32_t maxDescriptorSetUpdateAfterBindSamplers - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - uint32_t maxDescriptorSetUpdateAfterBindSampledImages - uint32_t maxDescriptorSetUpdateAfterBindStorageImages - uint32_t maxDescriptorSetUpdateAfterBindInputAttachments + uint32_t maxUpdateAfterBindDescriptorsInAllPools + VkBool32 shaderUniformBufferArrayNonUniformIndexingNative + VkBool32 shaderSampledImageArrayNonUniformIndexingNative + VkBool32 shaderStorageBufferArrayNonUniformIndexingNative + VkBool32 shaderStorageImageArrayNonUniformIndexingNative + VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative + VkBool32 robustBufferAccessUpdateAfterBind + VkBool32 quadDivergentImplicitLod + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments + uint32_t maxPerStageUpdateAfterBindResources + uint32_t maxDescriptorSetUpdateAfterBindSamplers + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic + uint32_t maxDescriptorSetUpdateAfterBindSampledImages + uint32_t maxDescriptorSetUpdateAfterBindStorageImages + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments @@ -3399,8 +3609,8 @@ typedef void CAMetalLayer; const void* pNext uint32_t srcSubpass uint32_t dstSubpass - VkPipelineStageFlags srcStageMask - VkPipelineStageFlags dstStageMask + VkPipelineStageFlags srcStageMask + VkPipelineStageFlags dstStageMask VkAccessFlags srcAccessMask VkAccessFlags dstAccessMask VkDependencyFlags dependencyFlags @@ -3441,7 +3651,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint64_t maxTimelineSemaphoreValueDifference + uint64_t maxTimelineSemaphoreValueDifference @@ -3489,15 +3699,15 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxVertexAttribDivisormax value of vertex attribute divisor + uint32_t maxVertexAttribDivisormax value of vertex attribute divisor VkStructureType sType void* pNext - uint32_t pciDomain - uint32_t pciBus - uint32_t pciDevice - uint32_t pciFunction + uint32_t pciDomain + uint32_t pciBus + uint32_t pciDevice + uint32_t pciFunction VkStructureType sType @@ -3587,6 +3797,22 @@ typedef void CAMetalLayer; VkBool32 sparseImageFloat32Atomics VkBool32 sparseImageFloat32AtomicAdd + + VkStructureType sType + void* pNext + VkBool32 shaderBufferFloat16Atomics + VkBool32 shaderBufferFloat16AtomicAdd + VkBool32 shaderBufferFloat16AtomicMinMax + VkBool32 shaderBufferFloat32AtomicMinMax + VkBool32 shaderBufferFloat64AtomicMinMax + VkBool32 shaderSharedFloat16Atomics + VkBool32 shaderSharedFloat16AtomicAdd + VkBool32 shaderSharedFloat16AtomicMinMax + VkBool32 shaderSharedFloat32AtomicMinMax + VkBool32 shaderSharedFloat64AtomicMinMax + VkBool32 shaderImageFloat32AtomicMinMax + VkBool32 sparseImageFloat32AtomicMinMax + VkStructureType sType void* pNext @@ -3607,10 +3833,10 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkResolveModeFlags supportedDepthResolveModessupported depth resolve modes - VkResolveModeFlags supportedStencilResolveModessupported stencil resolve modes - VkBool32 independentResolveNonedepth and stencil resolve modes can be set independently if one of them is none - VkBool32 independentResolvedepth and stencil resolve modes can be set independently + VkResolveModeFlags supportedDepthResolveModessupported depth resolve modes + VkResolveModeFlags supportedStencilResolveModessupported stencil resolve modes + VkBool32 independentResolveNonedepth and stencil resolve modes can be set independently if one of them is none + VkBool32 independentResolvedepth and stencil resolve modes can be set independently @@ -3640,16 +3866,16 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxTransformFeedbackStreams - uint32_t maxTransformFeedbackBuffers - VkDeviceSize maxTransformFeedbackBufferSize - uint32_t maxTransformFeedbackStreamDataSize - uint32_t maxTransformFeedbackBufferDataSize - uint32_t maxTransformFeedbackBufferDataStride - VkBool32 transformFeedbackQueries - VkBool32 transformFeedbackStreamsLinesTriangles - VkBool32 transformFeedbackRasterizationStreamSelect - VkBool32 transformFeedbackDraw + uint32_t maxTransformFeedbackStreams + uint32_t maxTransformFeedbackBuffers + VkDeviceSize maxTransformFeedbackBufferSize + uint32_t maxTransformFeedbackStreamDataSize + uint32_t maxTransformFeedbackBufferDataSize + uint32_t maxTransformFeedbackBufferDataStride + VkBool32 transformFeedbackQueries + VkBool32 transformFeedbackStreamsLinesTriangles + VkBool32 transformFeedbackRasterizationStreamSelect + VkBool32 transformFeedbackDraw VkStructureType sType @@ -3724,9 +3950,14 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkExtent2D shadingRateTexelSize - uint32_t shadingRatePaletteSize - uint32_t shadingRateMaxCoarseSamples + VkExtent2D shadingRateTexelSize + uint32_t shadingRatePaletteSize + uint32_t shadingRateMaxCoarseSamples + + + VkStructureType sType + void* pNext + VkBool32 invocationMask uint32_t pixelX @@ -3755,19 +3986,19 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t maxDrawMeshTasksCount - uint32_t maxTaskWorkGroupInvocations - uint32_t maxTaskWorkGroupSize[3] - uint32_t maxTaskTotalMemorySize - uint32_t maxTaskOutputCount - uint32_t maxMeshWorkGroupInvocations - uint32_t maxMeshWorkGroupSize[3] - uint32_t maxMeshTotalMemorySize - uint32_t maxMeshOutputVertices - uint32_t maxMeshOutputPrimitives - uint32_t maxMeshMultiviewViewCount - uint32_t meshOutputPerVertexGranularity - uint32_t meshOutputPerPrimitiveGranularity + uint32_t maxDrawMeshTasksCount + uint32_t maxTaskWorkGroupInvocations + uint32_t maxTaskWorkGroupSize[3] + uint32_t maxTaskTotalMemorySize + uint32_t maxTaskOutputCount + uint32_t maxMeshWorkGroupInvocations + uint32_t maxMeshWorkGroupSize[3] + uint32_t maxMeshTotalMemorySize + uint32_t maxMeshOutputVertices + uint32_t maxMeshOutputPrimitives + uint32_t maxMeshMultiviewViewCount + uint32_t meshOutputPerVertexGranularity + uint32_t meshOutputPerPrimitiveGranularity uint32_t taskCount @@ -3923,38 +4154,38 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint64_t maxGeometryCount - uint64_t maxInstanceCount - uint64_t maxPrimitiveCount - uint32_t maxPerStageDescriptorAccelerationStructures - uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures - uint32_t maxDescriptorSetAccelerationStructures - uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures - uint32_t minAccelerationStructureScratchOffsetAlignment + uint64_t maxGeometryCount + uint64_t maxInstanceCount + uint64_t maxPrimitiveCount + uint32_t maxPerStageDescriptorAccelerationStructures + uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures + uint32_t maxDescriptorSetAccelerationStructures + uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures + uint32_t minAccelerationStructureScratchOffsetAlignment VkStructureType sType void* pNext - uint32_t shaderGroupHandleSize - uint32_t maxRayRecursionDepth - uint32_t maxShaderGroupStride - uint32_t shaderGroupBaseAlignment - uint32_t shaderGroupHandleCaptureReplaySize - uint32_t maxRayDispatchInvocationCount - uint32_t shaderGroupHandleAlignment - uint32_t maxRayHitAttributeSize + uint32_t shaderGroupHandleSize + uint32_t maxRayRecursionDepth + uint32_t maxShaderGroupStride + uint32_t shaderGroupBaseAlignment + uint32_t shaderGroupHandleCaptureReplaySize + uint32_t maxRayDispatchInvocationCount + uint32_t shaderGroupHandleAlignment + uint32_t maxRayHitAttributeSize VkStructureType sType void* pNext - uint32_t shaderGroupHandleSize - uint32_t maxRecursionDepth - uint32_t maxShaderGroupStride - uint32_t shaderGroupBaseAlignment - uint64_t maxGeometryCount - uint64_t maxInstanceCount - uint64_t maxTriangleCount - uint32_t maxDescriptorSetAccelerationStructures + uint32_t shaderGroupHandleSize + uint32_t maxRecursionDepth + uint32_t maxShaderGroupStride + uint32_t shaderGroupBaseAlignment + uint64_t maxGeometryCount + uint64_t maxInstanceCount + uint64_t maxTriangleCount + uint32_t maxDescriptorSetAccelerationStructures VkDeviceAddress deviceAddress @@ -4029,17 +4260,17 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkExtent2D minFragmentDensityTexelSize - VkExtent2D maxFragmentDensityTexelSize - VkBool32 fragmentDensityInvocations + VkExtent2D minFragmentDensityTexelSize + VkExtent2D maxFragmentDensityTexelSize + VkBool32 fragmentDensityInvocations VkStructureType sType void* pNext - VkBool32 subsampledLoads - VkBool32 subsampledCoarseReconstructionEarlyAccess - uint32_t maxSubsampledArrayLayers - uint32_t maxDescriptorSetSubsampledSamplers + VkBool32 subsampledLoads + VkBool32 subsampledCoarseReconstructionEarlyAccess + uint32_t maxSubsampledArrayLayers + uint32_t maxDescriptorSetSubsampledSamplers VkStructureType sType @@ -4162,7 +4393,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t attachmentCount const VkImageView* pAttachments @@ -4181,7 +4412,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkShaderStageFlags cooperativeMatrixSupportedStages + VkShaderStageFlags cooperativeMatrixSupportedStages VkStructureType sType @@ -4253,11 +4484,11 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkBool32 allowCommandBufferQueryCopiesFlag to specify whether performance queries are allowed to be used in vkCmdCopyQueryPoolResults + VkBool32 allowCommandBufferQueryCopiesFlag to specify whether performance queries are allowed to be used in vkCmdCopyQueryPoolResults VkStructureType sType - const void* pNext + void* pNext VkPerformanceCounterUnitKHR unit VkPerformanceCounterScopeKHR scope VkPerformanceCounterStorageKHR storage @@ -4265,7 +4496,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + void* pNext VkPerformanceCounterDescriptionFlagsKHR flags char name[VK_MAX_DESCRIPTION_SIZE] char category[VK_MAX_DESCRIPTION_SIZE] @@ -4273,7 +4504,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t queueFamilyIndex uint32_t counterIndexCount const uint32_t* pCounterIndices @@ -4292,7 +4523,7 @@ typedef void CAMetalLayer; VkAcquireProfilingLockFlagsKHR flagsAcquire profiling lock flags uint64_t timeout - + VkStructureType sType const void* pNext uint32_t counterPassIndexIndex for which counter pass to submit @@ -4335,7 +4566,7 @@ typedef void CAMetalLayer; VkPerformanceValueTypeINTEL type - VkPerformanceValueDataINTEL data + VkPerformanceValueDataINTEL data VkStructureType sType @@ -4384,8 +4615,8 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t shaderSMCount - uint32_t shaderWarpsPerSM + uint32_t shaderSMCount + uint32_t shaderWarpsPerSM VkStructureTypesType @@ -4454,7 +4685,7 @@ typedef void CAMetalLayer; char name[VK_MAX_DESCRIPTION_SIZE] char description[VK_MAX_DESCRIPTION_SIZE] VkPipelineExecutableStatisticFormatKHR format - VkPipelineExecutableStatisticValueKHR value + VkPipelineExecutableStatisticValueKHR value VkStructureType sType @@ -4478,10 +4709,10 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkDeviceSize storageTexelBufferOffsetAlignmentBytes - VkBool32 storageTexelBufferOffsetSingleTexelAlignment - VkDeviceSize uniformTexelBufferOffsetAlignmentBytes - VkBool32 uniformTexelBufferOffsetSingleTexelAlignment + VkDeviceSize storageTexelBufferOffsetAlignmentBytes + VkBool32 storageTexelBufferOffsetSingleTexelAlignment + VkDeviceSize uniformTexelBufferOffsetAlignmentBytes + VkBool32 uniformTexelBufferOffsetSingleTexelAlignment VkStructureType sType @@ -4492,16 +4723,27 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t minSubgroupSizeThe minimum subgroup size supported by this device - uint32_t maxSubgroupSizeThe maximum subgroup size supported by this device - uint32_t maxComputeWorkgroupSubgroupsThe maximum number of subgroups supported in a workgroup - VkShaderStageFlags requiredSubgroupSizeStagesThe shader stages that support specifying a subgroup size + uint32_t minSubgroupSizeThe minimum subgroup size supported by this device + uint32_t maxSubgroupSizeThe maximum subgroup size supported by this device + uint32_t maxComputeWorkgroupSubgroupsThe maximum number of subgroups supported in a workgroup + VkShaderStageFlags requiredSubgroupSizeStagesThe shader stages that support specifying a subgroup size VkStructureType sType void* pNext uint32_t requiredSubgroupSize + + VkStructureType sType + void* pNext + VkRenderPass renderPass + uint32_t subpass + + + VkStructureType sType + void* pNext + uint32_t maxSubpassShadingWorkgroupSizeAspectRatio + VkStructureType sType const void* pNext @@ -4527,7 +4769,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t lineSubPixelPrecisionBits + uint32_t lineSubPixelPrecisionBits VkStructureType sType @@ -4561,21 +4803,21 @@ typedef void CAMetalLayer; VkStructureTypesType void* pNext - uint8_t deviceUUID[VK_UUID_SIZE] - uint8_t driverUUID[VK_UUID_SIZE] - uint8_t deviceLUID[VK_LUID_SIZE] - uint32_t deviceNodeMask - VkBool32 deviceLUIDValid - uint32_t subgroupSizeThe size of a subgroup for this queue. - VkShaderStageFlags subgroupSupportedStagesBitfield of what shader stages support subgroup operations - VkSubgroupFeatureFlags subgroupSupportedOperationsBitfield of what subgroup operations are supported. - VkBool32 subgroupQuadOperationsInAllStagesFlag to specify whether quad operations are available in all stages. - VkPointClippingBehavior pointClippingBehavior - uint32_t maxMultiviewViewCountmax number of views in a subpass - uint32_t maxMultiviewInstanceIndexmax instance index for a draw in a multiview subpass - VkBool32 protectedNoFault - uint32_t maxPerSetDescriptors - VkDeviceSize maxMemoryAllocationSize + uint8_t deviceUUID[VK_UUID_SIZE] + uint8_t driverUUID[VK_UUID_SIZE] + uint8_t deviceLUID[VK_LUID_SIZE] + uint32_t deviceNodeMask + VkBool32 deviceLUIDValid + uint32_t subgroupSizeThe size of a subgroup for this queue. + VkShaderStageFlags subgroupSupportedStagesBitfield of what shader stages support subgroup operations + VkSubgroupFeatureFlags subgroupSupportedOperationsBitfield of what subgroup operations are supported. + VkBool32 subgroupQuadOperationsInAllStagesFlag to specify whether quad operations are available in all stages. + VkPointClippingBehavior pointClippingBehavior + uint32_t maxMultiviewViewCountmax number of views in a subpass + uint32_t maxMultiviewInstanceIndexmax instance index for a draw in a multiview subpass + VkBool32 protectedNoFault + uint32_t maxPerSetDescriptors + VkDeviceSize maxMemoryAllocationSize VkStructureTypesType @@ -4631,58 +4873,58 @@ typedef void CAMetalLayer; VkStructureTypesType void* pNext - VkDriverId driverID - char driverName[VK_MAX_DRIVER_NAME_SIZE] - char driverInfo[VK_MAX_DRIVER_INFO_SIZE] - VkConformanceVersion conformanceVersion - VkShaderFloatControlsIndependencedenormBehaviorIndependence - VkShaderFloatControlsIndependenceroundingModeIndependence - VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf - VkBool32 shaderSignedZeroInfNanPreserveFloat32An implementation can preserve signed zero, nan, inf - VkBool32 shaderSignedZeroInfNanPreserveFloat64An implementation can preserve signed zero, nan, inf - VkBool32 shaderDenormPreserveFloat16An implementation can preserve denormals - VkBool32 shaderDenormPreserveFloat32An implementation can preserve denormals - VkBool32 shaderDenormPreserveFloat64An implementation can preserve denormals - VkBool32 shaderDenormFlushToZeroFloat16An implementation can flush to zero denormals - VkBool32 shaderDenormFlushToZeroFloat32An implementation can flush to zero denormals - VkBool32 shaderDenormFlushToZeroFloat64An implementation can flush to zero denormals - VkBool32 shaderRoundingModeRTEFloat16An implementation can support RTE - VkBool32 shaderRoundingModeRTEFloat32An implementation can support RTE - VkBool32 shaderRoundingModeRTEFloat64An implementation can support RTE - VkBool32 shaderRoundingModeRTZFloat16An implementation can support RTZ - VkBool32 shaderRoundingModeRTZFloat32An implementation can support RTZ - VkBool32 shaderRoundingModeRTZFloat64An implementation can support RTZ - uint32_t maxUpdateAfterBindDescriptorsInAllPools - VkBool32 shaderUniformBufferArrayNonUniformIndexingNative - VkBool32 shaderSampledImageArrayNonUniformIndexingNative - VkBool32 shaderStorageBufferArrayNonUniformIndexingNative - VkBool32 shaderStorageImageArrayNonUniformIndexingNative - VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative - VkBool32 robustBufferAccessUpdateAfterBind - VkBool32 quadDivergentImplicitLod - uint32_t maxPerStageDescriptorUpdateAfterBindSamplers - uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers - uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers - uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages - uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages - uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments - uint32_t maxPerStageUpdateAfterBindResources - uint32_t maxDescriptorSetUpdateAfterBindSamplers - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - uint32_t maxDescriptorSetUpdateAfterBindSampledImages - uint32_t maxDescriptorSetUpdateAfterBindStorageImages - uint32_t maxDescriptorSetUpdateAfterBindInputAttachments - VkResolveModeFlags supportedDepthResolveModessupported depth resolve modes - VkResolveModeFlags supportedStencilResolveModessupported stencil resolve modes - VkBool32 independentResolveNonedepth and stencil resolve modes can be set independently if one of them is none - VkBool32 independentResolvedepth and stencil resolve modes can be set independently - VkBool32 filterMinmaxSingleComponentFormats - VkBool32 filterMinmaxImageComponentMapping - uint64_t maxTimelineSemaphoreValueDifference - VkSampleCountFlags framebufferIntegerColorSampleCounts + VkDriverId driverID + char driverName[VK_MAX_DRIVER_NAME_SIZE] + char driverInfo[VK_MAX_DRIVER_INFO_SIZE] + VkConformanceVersion conformanceVersion + VkShaderFloatControlsIndependencedenormBehaviorIndependence + VkShaderFloatControlsIndependenceroundingModeIndependence + VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf + VkBool32 shaderSignedZeroInfNanPreserveFloat32An implementation can preserve signed zero, nan, inf + VkBool32 shaderSignedZeroInfNanPreserveFloat64An implementation can preserve signed zero, nan, inf + VkBool32 shaderDenormPreserveFloat16An implementation can preserve denormals + VkBool32 shaderDenormPreserveFloat32An implementation can preserve denormals + VkBool32 shaderDenormPreserveFloat64An implementation can preserve denormals + VkBool32 shaderDenormFlushToZeroFloat16An implementation can flush to zero denormals + VkBool32 shaderDenormFlushToZeroFloat32An implementation can flush to zero denormals + VkBool32 shaderDenormFlushToZeroFloat64An implementation can flush to zero denormals + VkBool32 shaderRoundingModeRTEFloat16An implementation can support RTE + VkBool32 shaderRoundingModeRTEFloat32An implementation can support RTE + VkBool32 shaderRoundingModeRTEFloat64An implementation can support RTE + VkBool32 shaderRoundingModeRTZFloat16An implementation can support RTZ + VkBool32 shaderRoundingModeRTZFloat32An implementation can support RTZ + VkBool32 shaderRoundingModeRTZFloat64An implementation can support RTZ + uint32_t maxUpdateAfterBindDescriptorsInAllPools + VkBool32 shaderUniformBufferArrayNonUniformIndexingNative + VkBool32 shaderSampledImageArrayNonUniformIndexingNative + VkBool32 shaderStorageBufferArrayNonUniformIndexingNative + VkBool32 shaderStorageImageArrayNonUniformIndexingNative + VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative + VkBool32 robustBufferAccessUpdateAfterBind + VkBool32 quadDivergentImplicitLod + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments + uint32_t maxPerStageUpdateAfterBindResources + uint32_t maxDescriptorSetUpdateAfterBindSamplers + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic + uint32_t maxDescriptorSetUpdateAfterBindSampledImages + uint32_t maxDescriptorSetUpdateAfterBindStorageImages + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments + VkResolveModeFlags supportedDepthResolveModessupported depth resolve modes + VkResolveModeFlags supportedStencilResolveModessupported stencil resolve modes + VkBool32 independentResolveNonedepth and stencil resolve modes can be set independently if one of them is none + VkBool32 independentResolvedepth and stencil resolve modes can be set independently + VkBool32 filterMinmaxSingleComponentFormats + VkBool32 filterMinmaxImageComponentMapping + uint64_t maxTimelineSemaphoreValueDifference + VkSampleCountFlags framebufferIntegerColorSampleCounts VkStructureType sType @@ -4706,13 +4948,13 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext - VkClearColorValue customBorderColor + VkClearColorValue customBorderColor VkFormat format VkStructureType sType void* pNext - uint32_t maxCustomBorderColorSamplers + uint32_t maxCustomBorderColorSamplers VkStructureType sType @@ -4732,24 +4974,24 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext VkFormat vertexFormat - VkDeviceOrHostAddressConstKHR vertexData + VkDeviceOrHostAddressConstKHR vertexData VkDeviceSize vertexStride uint32_t maxVertex VkIndexType indexType - VkDeviceOrHostAddressConstKHR indexData - VkDeviceOrHostAddressConstKHR transformData + VkDeviceOrHostAddressConstKHR indexData + VkDeviceOrHostAddressConstKHR transformData VkStructureType sType const void* pNext - VkDeviceOrHostAddressConstKHR data + VkDeviceOrHostAddressConstKHR data VkDeviceSize stride VkStructureType sType const void* pNext VkBool32 arrayOfPointers - VkDeviceOrHostAddressConstKHR data + VkDeviceOrHostAddressConstKHR data VkAccelerationStructureGeometryTrianglesDataKHR triangles @@ -4774,7 +5016,7 @@ typedef void CAMetalLayer; uint32_t geometryCount const VkAccelerationStructureGeometryKHR* pGeometries const VkAccelerationStructureGeometryKHR* const* ppGeometries - VkDeviceOrHostAddressKHR scratchData + VkDeviceOrHostAddressKHR scratchData uint32_t primitiveCount @@ -4836,13 +5078,13 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext VkAccelerationStructureKHR src - VkDeviceOrHostAddressKHR dst + VkDeviceOrHostAddressKHR dst VkCopyAccelerationStructureModeKHR mode VkStructureType sType const void* pNext - VkDeviceOrHostAddressConstKHR src + VkDeviceOrHostAddressConstKHR src VkAccelerationStructureKHR dst VkCopyAccelerationStructureModeKHR mode @@ -4863,6 +5105,13 @@ typedef void CAMetalLayer; void* pNext VkBool32 extendedDynamicState + + VkStructureType sType + void* pNext + VkBool32 extendedDynamicState2 + VkBool32 extendedDynamicState2LogicOp + VkBool32 extendedDynamicState2PatchControlPoints + VkStructureType sType void* pNextPointer to next structure @@ -4894,6 +5143,11 @@ typedef void CAMetalLayer; void* pNext VkBool32 shaderZeroInitializeWorkgroupMemory + + VkStructureType sType + void* pNext + VkBool32 shaderSubgroupUniformControlFlow + VkStructureType sType void* pNext @@ -4904,15 +5158,15 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkDeviceSize robustStorageBufferAccessSizeAlignment - VkDeviceSize robustUniformBufferAccessSizeAlignment + VkDeviceSize robustStorageBufferAccessSizeAlignment + VkDeviceSize robustUniformBufferAccessSizeAlignment VkStructureType sType void* pNext VkBool32 robustImageAccess - - + + VkStructureType sType void* pNext VkBool32 workgroupMemoryExplicitLayout @@ -4942,7 +5196,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - uint32_t minVertexInputBindingStrideAlignment + uint32_t minVertexInputBindingStrideAlignment VkStructureType sType @@ -4950,6 +5204,11 @@ typedef void CAMetalLayer; VkBool32 formatA4R4G4B4 VkBool32 formatA4B4G4R4 + + VkStructureType sType + void* pNext + VkBool32 subpassShading + VkStructureType sType const void* pNext @@ -5059,7 +5318,7 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext - const VkAttachmentReference2* pFragmentShadingRateAttachment + const VkAttachmentReference2* pFragmentShadingRateAttachment VkExtent2D shadingRateAttachmentTexelSize @@ -5078,23 +5337,23 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkExtent2D minFragmentShadingRateAttachmentTexelSize - VkExtent2D maxFragmentShadingRateAttachmentTexelSize - uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio - VkBool32 primitiveFragmentShadingRateWithMultipleViewports - VkBool32 layeredShadingRateAttachments - VkBool32 fragmentShadingRateNonTrivialCombinerOps - VkExtent2D maxFragmentSize - uint32_t maxFragmentSizeAspectRatio - uint32_t maxFragmentShadingRateCoverageSamples - VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples - VkBool32 fragmentShadingRateWithShaderDepthStencilWrites - VkBool32 fragmentShadingRateWithSampleMask - VkBool32 fragmentShadingRateWithShaderSampleMask - VkBool32 fragmentShadingRateWithConservativeRasterization - VkBool32 fragmentShadingRateWithFragmentShaderInterlock - VkBool32 fragmentShadingRateWithCustomSampleLocations - VkBool32 fragmentShadingRateStrictMultiplyCombiner + VkExtent2D minFragmentShadingRateAttachmentTexelSize + VkExtent2D maxFragmentShadingRateAttachmentTexelSize + uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio + VkBool32 primitiveFragmentShadingRateWithMultipleViewports + VkBool32 layeredShadingRateAttachments + VkBool32 fragmentShadingRateNonTrivialCombinerOps + VkExtent2D maxFragmentSize + uint32_t maxFragmentSizeAspectRatio + uint32_t maxFragmentShadingRateCoverageSamples + VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples + VkBool32 fragmentShadingRateWithShaderDepthStencilWrites + VkBool32 fragmentShadingRateWithSampleMask + VkBool32 fragmentShadingRateWithShaderSampleMask + VkBool32 fragmentShadingRateWithConservativeRasterization + VkBool32 fragmentShadingRateWithFragmentShaderInterlock + VkBool32 fragmentShadingRateWithCustomSampleLocations + VkBool32 fragmentShadingRateStrictMultiplyCombiner VkStructureType sType @@ -5117,7 +5376,7 @@ typedef void CAMetalLayer; VkStructureType sType void* pNext - VkSampleCountFlagBits maxFragmentShadingRateInvocationCount + VkSampleCountFlagBits maxFragmentShadingRateInvocationCount VkStructureType sType @@ -5148,39 +5407,696 @@ typedef void CAMetalLayer; uint32_t mutableDescriptorTypeListCount const VkMutableDescriptorTypeListVALVE* pMutableDescriptorTypeLists + + VkStructureType sType + void* pNext + VkBool32 vertexInputDynamicState + + + VkStructureType sType + void* pNext + VkBool32 externalMemoryRDMA + + + VkStructureTypesType + void* pNext + uint32_t binding + uint32_t stride + VkVertexInputRate inputRate + uint32_t divisor + + + VkStructureTypesType + void* pNext + uint32_t locationlocation of the shader vertex attrib + uint32_t bindingVertex buffer binding id + VkFormat formatformat of source data + uint32_t offsetOffset of first element in bytes from base of vertex + + + VkStructureType sType + void* pNext + VkBool32 colorWriteEnable + + + VkStructureType sType + const void* pNext + uint32_t attachmentCount# of pAttachments + const VkBool32* pColorWriteEnables + + + VkStructureType sType + const void* pNext + VkPipelineStageFlags2KHR srcStageMask + VkAccessFlags2KHR srcAccessMask + VkPipelineStageFlags2KHR dstStageMask + VkAccessFlags2KHR dstAccessMask + + + VkStructureType sType + const void* pNext + VkPipelineStageFlags2KHR srcStageMask + VkAccessFlags2KHR srcAccessMask + VkPipelineStageFlags2KHR dstStageMask + VkAccessFlags2KHR dstAccessMask + VkImageLayout oldLayout + VkImageLayout newLayout + uint32_t srcQueueFamilyIndex + uint32_t dstQueueFamilyIndex + VkImage image + VkImageSubresourceRange subresourceRange + + + VkStructureType sType + const void* pNext + VkPipelineStageFlags2KHR srcStageMask + VkAccessFlags2KHR srcAccessMask + VkPipelineStageFlags2KHR dstStageMask + VkAccessFlags2KHR dstAccessMask + uint32_t srcQueueFamilyIndex + uint32_t dstQueueFamilyIndex + VkBuffer buffer + VkDeviceSize offset + VkDeviceSize size + + + VkStructureType sType + const void* pNext + VkDependencyFlags dependencyFlags + uint32_t memoryBarrierCount + const VkMemoryBarrier2KHR* pMemoryBarriers + uint32_t bufferMemoryBarrierCount + const VkBufferMemoryBarrier2KHR* pBufferMemoryBarriers + uint32_t imageMemoryBarrierCount + const VkImageMemoryBarrier2KHR* pImageMemoryBarriers + + + VkStructureType sType + const void* pNext + VkSemaphore semaphore + uint64_t value + VkPipelineStageFlags2KHR stageMask + uint32_t deviceIndex + + + VkStructureType sType + const void* pNext + VkCommandBuffer commandBuffer + uint32_t deviceMask + + + VkStructureType sType + const void* pNext + VkSubmitFlagsKHR flags + uint32_t waitSemaphoreInfoCount + const VkSemaphoreSubmitInfoKHR* pWaitSemaphoreInfos + uint32_t commandBufferInfoCount + const VkCommandBufferSubmitInfoKHR* pCommandBufferInfos + uint32_t signalSemaphoreInfoCount + const VkSemaphoreSubmitInfoKHR* pSignalSemaphoreInfos + + + VkStructureType sType + void* pNext + VkPipelineStageFlags2KHR checkpointExecutionStageMask + + + VkStructureType sType + void* pNext + VkPipelineStageFlags2KHR stage + void* pCheckpointMarker + + + VkStructureType sType + void* pNext + VkBool32 synchronization2 + + + VkStructureTypesType + void* pNext + VkVideoCodecOperationFlagsKHR videoCodecOperations + + + VkStructureTypesType + void* pNext + uint32_t profileCount + const VkVideoProfileKHR* pProfiles + + + VkStructureTypesType + void* pNext + VkImageUsageFlags imageUsage + const VkVideoProfilesKHR* pVideoProfiles + + + VkStructureTypesType + void* pNext + VkFormat format + + + VkStructureTypesType + void* pNext + VkVideoCodecOperationFlagBitsKHR videoCodecOperation + VkVideoChromaSubsamplingFlagsKHR chromaSubsampling + VkVideoComponentBitDepthFlagsKHR lumaBitDepth + VkVideoComponentBitDepthFlagsKHR chromaBitDepth + + + VkStructureTypesType + void* pNext + VkVideoCapabilitiesFlagsKHR capabilityFlags + VkDeviceSize minBitstreamBufferOffsetAlignment + VkDeviceSize minBitstreamBufferSizeAlignment + VkExtent2D videoPictureExtentGranularity + VkExtent2D minExtent + VkExtent2D maxExtent + uint32_t maxReferencePicturesSlotsCount + uint32_t maxReferencePicturesActiveCount + + + VkStructureTypesType + const void* pNext + uint32_t memoryBindIndex + VkMemoryRequirements2* pMemoryRequirements + + + VkStructureTypesType + const void* pNext + uint32_t memoryBindIndex + VkDeviceMemory memory + VkDeviceSize memoryOffset + VkDeviceSize memorySize + + + VkStructureTypesType + const void* pNext + VkOffset2D codedOffsetThe offset to be used for the picture resource, currently only used in field mode + VkExtent2D codedExtentThe extent to be used for the picture resource + uint32_t baseArrayLayerTThe first array layer to be accessed for the Decode or Encode Operations + VkImageView imageViewBindingThe ImageView binding of the resource + + + VkStructureTypesType + const void* pNext + int8_t slotIndexThe reference slot index + const VkVideoPictureResourceKHR* pPictureResourceThe reference picture resource + + + VkStructureTypesType + const void* pNext + VkVideoDecodeFlagsKHR flags + VkOffset2D codedOffset + VkExtent2D codedExtent + VkBuffer srcBuffer + VkDeviceSize srcBufferOffset + VkDeviceSize srcBufferRange + VkVideoPictureResourceKHR dstPictureResource + const VkVideoReferenceSlotKHR* pSetupReferenceSlot + uint32_t referenceSlotCount + const VkVideoReferenceSlotKHR* pReferenceSlots + + Video Decode Codec Standard specific structures + #include "vk_video/vulkan_video_codec_h264std.h" + + + + + + + + + + + + + + + + + + + #include "vk_video/vulkan_video_codec_h264std_decode.h" + + + + + + + + + VkStructureTypesType + const void* pNext + StdVideoH264ProfileIdc stdProfileIdc + VkVideoDecodeH264FieldLayoutFlagsEXT fieldLayout + + + VkStructureTypesType + void* pNext + uint32_t maxLevel + VkOffset2D fieldOffsetGranularity + VkExtensionProperties stdExtensionVersion + + + VkStructureTypesType + const void* pNext + VkVideoDecodeH264CreateFlagsEXT flags + const VkExtensionProperties* pStdExtensionVersion + + + + + VkStructureTypesType + const void* pNext + uint32_t spsStdCount + const StdVideoH264SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH264PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + + + VkStructureTypesType + const void* pNext + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo + + + VkStructureTypesType + const void* pNext + const StdVideoDecodeH264PictureInfo* pStdPictureInfo + uint32_t slicesCount + const uint32_t* pSlicesDataOffsets + + + VkStructureTypesType + const void* pNext + const StdVideoDecodeH264ReferenceInfo* pStdReferenceInfo + + + VkStructureTypesType + const void*pNext + const StdVideoDecodeH264Mvc* pStdMvc + + #include "vk_video/vulkan_video_codec_h265std.h" + + + + + + + + + + + + + + + + + #include "vk_video/vulkan_video_codec_h265std_decode.h" + + + + + + VkStructureTypesType + const void* pNext + StdVideoH265ProfileIdc stdProfileIdc + + + VkStructureTypesType + void* pNext + uint32_t maxLevel + VkExtensionProperties stdExtensionVersion + + + VkStructureTypesType + const void* pNext + VkVideoDecodeH265CreateFlagsEXT flags + const VkExtensionProperties* pStdExtensionVersion + + + VkStructureTypesType + const void* pNext + uint32_t spsStdCount + const StdVideoH265SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH265PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + + + VkStructureTypesType + const void* pNext + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo + + + VkStructureTypesType + const void* pNext + StdVideoDecodeH265PictureInfo* pStdPictureInfo + uint32_t slicesCount + const uint32_t* pSlicesDataOffsets + + + VkStructureTypesType + const void* pNext + const StdVideoDecodeH265ReferenceInfo* pStdReferenceInfo + + + VkStructureTypesType + const void* pNext + uint32_t queueFamilyIndex + VkVideoSessionCreateFlagsKHR flags + const VkVideoProfileKHR* pVideoProfile + VkFormat pictureFormat + VkExtent2D maxCodedExtent + VkFormat referencePicturesFormat + uint32_t maxReferencePicturesSlotsCount + uint32_t maxReferencePicturesActiveCount + + + VkStructureTypesType + const void* pNext + VkVideoSessionParametersKHR videoSessionParametersTemplate + VkVideoSessionKHR videoSession + + + VkStructureTypesType + const void* pNext + uint32_t updateSequenceCount + + + VkStructureTypesType + const void* pNext + VkVideoBeginCodingFlagsKHR flags + VkVideoCodingQualityPresetFlagsKHR codecQualityPreset + VkVideoSessionKHR videoSession + VkVideoSessionParametersKHR videoSessionParameters + uint32_t referenceSlotCount + const VkVideoReferenceSlotKHR* pReferenceSlots + + + VkStructureTypesType + const void* pNext + VkVideoEndCodingFlagsKHR flags + + + VkStructureTypesType + const void* pNext + VkVideoCodingControlFlagsKHR flags + + + VkStructureTypesType + const void* pNext + VkVideoEncodeFlagsKHR flags + uint32_t qualityLevel + VkExtent2D codedExtent + VkBuffer dstBitstreamBuffer + VkDeviceSize dstBitstreamBufferOffset + VkDeviceSize dstBitstreamBufferMaxRange + VkVideoPictureResourceKHR srcPictureResource + const VkVideoReferenceSlotKHR* pSetupReferenceSlot + uint32_t referenceSlotCount + const VkVideoReferenceSlotKHR* pReferenceSlots + + + VkStructureTypesType + const void* pNext + VkVideoEncodeRateControlFlagsKHR flags + VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode + uint32_t averageBitrate + uint16_t peakToAverageBitrateRatio + uint16_t frameRateNumerator + uint16_t frameRateDenominator + uint32_t virtualBufferSizeInMs + + + VkStructureTypesType + const void* pNext + VkVideoEncodeH264CapabilitiesFlagsEXT flags + VkVideoEncodeH264InputModeFlagsEXT inputModeFlags + VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags + VkExtent2D minPictureSizeInMbs + VkExtent2D maxPictureSizeInMbs + VkExtent2D inputImageDataAlignment + uint8_t maxNumL0ReferenceForP + uint8_t maxNumL0ReferenceForB + uint8_t maxNumL1Reference + uint8_t qualityLevelCount + VkExtensionProperties stdExtensionVersion + + + VkStructureTypesType + const void* pNext + VkVideoEncodeH264CreateFlagsEXT flags + VkExtent2D maxPictureSizeInMbs + const VkExtensionProperties* pStdExtensionVersion + + #include "vk_video/vulkan_video_codec_h264std_encode.h" + + + + + + + + + + VkStructureTypesType + const void* pNext + uint32_t spsStdCount + const StdVideoH264SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH264PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + + + VkStructureTypesType + const void* pNext + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo + + + VkStructureTypesType + const void* pNext + int8_t slotIndex + const StdVideoEncodeH264PictureInfo* pStdPictureInfo + + + VkStructureTypesType + const void* pNext + uint8_t refDefaultFinalList0EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList0Entries + uint8_t refDefaultFinalList1EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList1Entries + uint32_t naluSliceEntryCount + const VkVideoEncodeH264NaluSliceEXT* pNaluSliceEntries + const VkVideoEncodeH264DpbSlotInfoEXT* pCurrentPictureInfo + + + VkStructureTypesType + const void* pNext + uint8_t spsId + VkBool32 emitSpsEnable + uint32_t ppsIdEntryCount + const uint8_t* ppsIdEntries + + + VkStructureTypesType + const void* pNext + StdVideoH264ProfileIdc stdProfileIdc + + + VkStructureTypesType + const void* pNext + const StdVideoEncodeH264SliceHeader* pSliceHeaderStd + uint32_t mbCount + uint8_t refFinalList0EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList0Entries + uint8_t refFinalList1EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList1Entries + uint32_t precedingNaluBytes + uint8_t minQp + uint8_t maxQp + + + VkStructureType sType + void* pNext + VkBool32 inheritedViewportScissor2D + + + VkStructureType sType + const void* pNext + VkBool32 viewportScissor2D + uint32_t viewportDepthCount + const VkViewport* pViewportDepths + + + VkStructureType sType + void* pNext + VkBool32 ycbcr2plane444Formats + + + VkStructureType sType + void* pNext + VkBool32 provokingVertexLast + VkBool32 transformFeedbackPreservesProvokingVertex + + + VkStructureType sType + void* pNext + VkBool32 provokingVertexModePerPipeline + VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex + + + VkStructureType sType + const void* pNext + VkProvokingVertexModeEXT provokingVertexMode + + + VkStructureType sType + const void* pNext + size_t dataSize + const void* pData + + + VkStructureType sType + const void* pNext + VkCuModuleNVX module + const char* pName + + + VkStructureType sType + const void* pNext + VkCuFunctionNVX function + uint32_t gridDimX + uint32_t gridDimY + uint32_t gridDimZ + uint32_t blockDimX + uint32_t blockDimY + uint32_t blockDimZ + uint32_t sharedMemBytes + size_t paramCount + const void* const * pParams + size_t extraCount + const void* const * pExtras + + + VkStructureType sType + void* pNext + VkBool32 hasPrimary + VkBool32 hasRender + int64_t primaryMajor + int64_t primaryMinor + int64_t renderMajor + int64_t renderMinor + + + VkStructureType sType + void* pNext + VkBool32 rayTracingMotionBlur + VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect + + + + VkStructureType sType + const void* pNext + VkDeviceOrHostAddressConstKHR vertexData + + + VkStructureType sType + const void* pNext + uint32_t maxInstances + VkAccelerationStructureMotionInfoFlagsNV flags + + + float sx + float a + float b + float pvx + float sy + float c + float pvy + float sz + float pvz + float qx + float qy + float qz + float qw + float tx + float ty + float tz + + + The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout. + VkSRTDataNV transformT0 + VkSRTDataNV transformT1 + uint32_t instanceCustomIndex:24 + uint32_t mask:8 + uint32_t instanceShaderBindingTableRecordOffset:24 + VkGeometryInstanceFlagsKHR flags:8 + uint64_t accelerationStructureReference + + + The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout. + VkTransformMatrixKHR transformT0 + VkTransformMatrixKHR transformT1 + uint32_t instanceCustomIndex:24 + uint32_t mask:8 + uint32_t instanceShaderBindingTableRecordOffset:24 + VkGeometryInstanceFlagsKHR flags:8 + uint64_t accelerationStructureReference + + + VkAccelerationStructureInstanceKHR staticInstance + VkAccelerationStructureMatrixMotionInstanceNV matrixMotionInstance + VkAccelerationStructureSRTMotionInstanceNV srtMotionInstance + + + VkAccelerationStructureMotionInstanceTypeNV type + VkAccelerationStructureMotionInstanceFlagsNV flags + VkAccelerationStructureMotionInstanceDataNV data + + typedef void* VkRemoteAddressNV; + + VkStructureType sType + const void* pNext + VkDeviceMemory memory + VkExternalMemoryHandleTypeFlagBits handleType + - Vulkan enumerant (token) definitions - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5780,7 +6696,7 @@ typedef void CAMetalLayer; - + @@ -5805,7 +6721,7 @@ typedef void CAMetalLayer; - + @@ -5813,7 +6729,7 @@ typedef void CAMetalLayer; - + @@ -6076,6 +6992,7 @@ typedef void CAMetalLayer; + @@ -6308,6 +7225,8 @@ typedef void CAMetalLayer; + + @@ -6559,6 +7478,164 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7014,6 +8091,12 @@ typedef void CAMetalLayer; const VkAllocationCallbacks* pAllocator VkPipeline* pPipelines + + VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI + VkDevice device + VkRenderPass renderpass + VkExtent2D* pMaxWorkgroupSize + void vkDestroyPipeline VkDevice device @@ -7185,6 +8268,9 @@ typedef void CAMetalLayer; VkResult vkResetCommandBuffer VkCommandBuffer commandBuffer VkCommandBufferResetFlags flags + + the sname:VkCommandPool that pname:commandBuffer was allocated from + void vkCmdBindPipeline @@ -7273,7 +8359,7 @@ typedef void CAMetalLayer; const VkBuffer* pBuffers const VkDeviceSize* pOffsets - + void vkCmdDraw VkCommandBuffer commandBuffer uint32_t vertexCount @@ -7281,7 +8367,7 @@ typedef void CAMetalLayer; uint32_t firstVertex uint32_t firstInstance - + void vkCmdDrawIndexed VkCommandBuffer commandBuffer uint32_t indexCount @@ -7290,7 +8376,26 @@ typedef void CAMetalLayer; int32_t vertexOffset uint32_t firstInstance - + + void vkCmdDrawMultiEXT + VkCommandBuffer commandBuffer + uint32_t drawCount + const VkMultiDrawInfoEXT* pVertexInfo + uint32_t instanceCount + uint32_t firstInstance + uint32_t stride + + + void vkCmdDrawMultiIndexedEXT + VkCommandBuffer commandBuffer + uint32_t drawCount + const VkMultiDrawIndexedInfoEXT* pIndexInfo + uint32_t instanceCount + uint32_t firstInstance + uint32_t stride + const int32_t* pVertexOffset + + void vkCmdDrawIndirect VkCommandBuffer commandBuffer VkBuffer buffer @@ -7298,7 +8403,7 @@ typedef void CAMetalLayer; uint32_t drawCount uint32_t stride - + void vkCmdDrawIndexedIndirect VkCommandBuffer commandBuffer VkBuffer buffer @@ -7306,20 +8411,24 @@ typedef void CAMetalLayer; uint32_t drawCount uint32_t stride - + void vkCmdDispatch VkCommandBuffer commandBuffer uint32_t groupCountX uint32_t groupCountY uint32_t groupCountZ - + void vkCmdDispatchIndirect VkCommandBuffer commandBuffer VkBuffer buffer VkDeviceSize offset - + + void vkCmdSubpassShadingHUAWEI + VkCommandBuffer commandBuffer + + void vkCmdCopyBuffer VkCommandBuffer commandBuffer VkBuffer srcBuffer @@ -7327,7 +8436,7 @@ typedef void CAMetalLayer; uint32_t regionCount const VkBufferCopy* pRegions - + void vkCmdCopyImage VkCommandBuffer commandBuffer VkImage srcImage @@ -7337,7 +8446,7 @@ typedef void CAMetalLayer; uint32_t regionCount const VkImageCopy* pRegions - + void vkCmdBlitImage VkCommandBuffer commandBuffer VkImage srcImage @@ -7348,7 +8457,7 @@ typedef void CAMetalLayer; const VkImageBlit* pRegions VkFilter filter - + void vkCmdCopyBufferToImage VkCommandBuffer commandBuffer VkBuffer srcBuffer @@ -7357,7 +8466,7 @@ typedef void CAMetalLayer; uint32_t regionCount const VkBufferImageCopy* pRegions - + void vkCmdCopyImageToBuffer VkCommandBuffer commandBuffer VkImage srcImage @@ -7366,7 +8475,7 @@ typedef void CAMetalLayer; uint32_t regionCount const VkBufferImageCopy* pRegions - + void vkCmdUpdateBuffer VkCommandBuffer commandBuffer VkBuffer dstBuffer @@ -7374,7 +8483,7 @@ typedef void CAMetalLayer; VkDeviceSize dataSize const void* pData - + void vkCmdFillBuffer VkCommandBuffer commandBuffer VkBuffer dstBuffer @@ -7382,16 +8491,16 @@ typedef void CAMetalLayer; VkDeviceSize size uint32_t data - + void vkCmdClearColorImage VkCommandBuffer commandBuffer VkImage image VkImageLayout imageLayout - const VkClearColorValue* pColor + const VkClearColorValue* pColor uint32_t rangeCount const VkImageSubresourceRange* pRanges - + void vkCmdClearDepthStencilImage VkCommandBuffer commandBuffer VkImage image @@ -7400,7 +8509,7 @@ typedef void CAMetalLayer; uint32_t rangeCount const VkImageSubresourceRange* pRanges - + void vkCmdClearAttachments VkCommandBuffer commandBuffer uint32_t attachmentCount @@ -7408,7 +8517,7 @@ typedef void CAMetalLayer; uint32_t rectCount const VkClearRect* pRects - + void vkCmdResolveImage VkCommandBuffer commandBuffer VkImage srcImage @@ -7422,21 +8531,21 @@ typedef void CAMetalLayer; void vkCmdSetEvent VkCommandBuffer commandBuffer VkEvent event - VkPipelineStageFlags stageMask + VkPipelineStageFlags stageMask void vkCmdResetEvent VkCommandBuffer commandBuffer VkEvent event - VkPipelineStageFlags stageMask + VkPipelineStageFlags stageMask void vkCmdWaitEvents VkCommandBuffer commandBuffer uint32_t eventCount const VkEvent* pEvents - VkPipelineStageFlags srcStageMask - VkPipelineStageFlags dstStageMask + VkPipelineStageFlags srcStageMask + VkPipelineStageFlags dstStageMask uint32_t memoryBarrierCount const VkMemoryBarrier* pMemoryBarriers uint32_t bufferMemoryBarrierCount @@ -7447,8 +8556,8 @@ typedef void CAMetalLayer; void vkCmdPipelineBarrier VkCommandBuffer commandBuffer - VkPipelineStageFlags srcStageMask - VkPipelineStageFlags dstStageMask + VkPipelineStageFlags srcStageMask + VkPipelineStageFlags dstStageMask VkDependencyFlags dependencyFlags uint32_t memoryBarrierCount const VkMemoryBarrier* pMemoryBarriers @@ -7486,14 +8595,14 @@ typedef void CAMetalLayer; uint32_t firstQuery uint32_t queryCount - + void vkCmdWriteTimestamp VkCommandBuffer commandBuffer VkPipelineStageFlagBits pipelineStage VkQueryPool queryPool uint32_t query - + void vkCmdCopyQueryPoolResults VkCommandBuffer commandBuffer VkQueryPool queryPool @@ -7513,18 +8622,18 @@ typedef void CAMetalLayer; uint32_t size const void* pValues - + void vkCmdBeginRenderPass VkCommandBuffer commandBuffer const VkRenderPassBeginInfo* pRenderPassBegin VkSubpassContents contents - + void vkCmdNextSubpass VkCommandBuffer commandBuffer VkSubpassContents contents - + void vkCmdEndRenderPass VkCommandBuffer commandBuffer @@ -7751,6 +8860,19 @@ typedef void CAMetalLayer; const VkAllocationCallbacks* pAllocator VkSurfaceKHR* pSurface + + VkResult vkCreateScreenSurfaceQNX + VkInstance instance + const VkScreenSurfaceCreateInfoQNX* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkSurfaceKHR* pSurface + + + VkBool32 vkGetPhysicalDeviceScreenPresentationSupportQNX + VkPhysicalDevice physicalDevice + uint32_t queueFamilyIndex + struct _screen_window* window + VkResult vkCreateDebugReportCallbackEXT VkInstance instance @@ -7769,7 +8891,7 @@ typedef void CAMetalLayer; VkInstance instance VkDebugReportFlagsEXT flags VkDebugReportObjectTypeEXT objectType - uint64_t object + uint64_t object size_t location int32_t messageCode const char* pLayerPrefix @@ -7950,6 +9072,25 @@ typedef void CAMetalLayer; int fd VkMemoryFdPropertiesKHR* pMemoryFdProperties + + VkResult vkGetMemoryZirconHandleFUCHSIA + VkDevice device + const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo + zx_handle_t* pZirconHandle + + + VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA + VkDevice device + VkExternalMemoryHandleTypeFlagBits handleType + zx_handle_t zirconHandle + VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties + + + VkResult vkGetMemoryRemoteAddressNV + VkDevice device + const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo + VkRemoteAddressNV* pAddress + void vkGetPhysicalDeviceExternalSemaphoreProperties VkPhysicalDevice physicalDevice @@ -7979,6 +9120,17 @@ typedef void CAMetalLayer; VkDevice device const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo + + VkResult vkGetSemaphoreZirconHandleFUCHSIA + VkDevice device + const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo + zx_handle_t* pZirconHandle + + + VkResult vkImportSemaphoreZirconHandleFUCHSIA + VkDevice device + const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo + void vkGetPhysicalDeviceExternalFenceProperties VkPhysicalDevice physicalDevice @@ -8485,7 +9637,7 @@ typedef void CAMetalLayer; const void* pHostPointer VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties - + void vkCmdWriteBufferMarkerAMD VkCommandBuffer commandBuffer VkPipelineStageFlagBits pipelineStage @@ -8501,21 +9653,21 @@ typedef void CAMetalLayer; VkRenderPass* pRenderPass - + void vkCmdBeginRenderPass2 VkCommandBuffer commandBuffer const VkRenderPassBeginInfo* pRenderPassBegin const VkSubpassBeginInfo* pSubpassBeginInfo - + void vkCmdNextSubpass2 VkCommandBuffer commandBuffer const VkSubpassBeginInfo* pSubpassBeginInfo const VkSubpassEndInfo* pSubpassEndInfo - + void vkCmdEndRenderPass2 VkCommandBuffer commandBuffer const VkSubpassEndInfo* pSubpassEndInfo @@ -8553,7 +9705,7 @@ typedef void CAMetalLayer; const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo struct AHardwareBuffer** pBuffer - + void vkCmdDrawIndirectCount VkCommandBuffer commandBuffer VkBuffer buffer @@ -8565,7 +9717,7 @@ typedef void CAMetalLayer; - + void vkCmdDrawIndexedIndirectCount VkCommandBuffer commandBuffer VkBuffer buffer @@ -8628,7 +9780,7 @@ typedef void CAMetalLayer; uint32_t query uint32_t index - + void vkCmdDrawIndirectByteCountEXT VkCommandBuffer commandBuffer uint32_t instanceCount @@ -8665,13 +9817,13 @@ typedef void CAMetalLayer; uint32_t customSampleOrderCount const VkCoarseSampleOrderCustomNV* pCustomSampleOrders - + void vkCmdDrawMeshTasksNV VkCommandBuffer commandBuffer uint32_t taskCount uint32_t firstTask - + void vkCmdDrawMeshTasksIndirectNV VkCommandBuffer commandBuffer VkBuffer buffer @@ -8679,7 +9831,7 @@ typedef void CAMetalLayer; uint32_t drawCount uint32_t stride - + void vkCmdDrawMeshTasksIndirectCountNV VkCommandBuffer commandBuffer VkBuffer buffer @@ -8702,6 +9854,12 @@ typedef void CAMetalLayer; const VkAllocationCallbacks* pAllocator VkAccelerationStructureNV* pAccelerationStructure + + void vkCmdBindInvocationMaskHUAWEI + VkCommandBuffer commandBuffer + VkImageView imageView + VkImageLayout imageLayout + void vkDestroyAccelerationStructureKHR VkDevice device @@ -9136,19 +10294,19 @@ typedef void CAMetalLayer; const VkAllocationCallbacks* pAllocator - uint32_t vkGetDeferredOperationMaxConcurrencyKHR - VkDevice device - VkDeferredOperationKHR operation + uint32_t vkGetDeferredOperationMaxConcurrencyKHR + VkDevice device + VkDeferredOperationKHR operation - VkResult vkGetDeferredOperationResultKHR - VkDevice device - VkDeferredOperationKHR operation + VkResult vkGetDeferredOperationResultKHR + VkDevice device + VkDeferredOperationKHR operation - VkResult vkDeferredOperationJoinKHR - VkDevice device - VkDeferredOperationKHR operation + VkResult vkDeferredOperationJoinKHR + VkDevice device + VkDeferredOperationKHR operation void vkCmdSetCullModeEXT @@ -9182,7 +10340,7 @@ typedef void CAMetalLayer; VkCommandBuffer commandBuffer uint32_t firstBinding uint32_t bindingCount - const VkBuffer* pBuffers + const VkBuffer* pBuffers const VkDeviceSize* pOffsets const VkDeviceSize* pSizes const VkDeviceSize* pStrides @@ -9221,6 +10379,31 @@ typedef void CAMetalLayer; VkStencilOp depthFailOp VkCompareOp compareOp + + void vkCmdSetPatchControlPointsEXT + VkCommandBuffer commandBuffer + uint32_t patchControlPoints + + + void vkCmdSetRasterizerDiscardEnableEXT + VkCommandBuffer commandBuffer + VkBool32 rasterizerDiscardEnable + + + void vkCmdSetDepthBiasEnableEXT + VkCommandBuffer commandBuffer + VkBool32 depthBiasEnable + + + void vkCmdSetLogicOpEXT + VkCommandBuffer commandBuffer + VkLogicOp logicOp + + + void vkCmdSetPrimitiveRestartEnableEXT + VkCommandBuffer commandBuffer + VkBool32 primitiveRestartEnable + VkResult vkCreatePrivateDataSlotEXT VkDevice device @@ -9238,7 +10421,7 @@ typedef void CAMetalLayer; VkResult vkSetPrivateDataEXT VkDevice device VkObjectType objectType - uint64_t objectHandle + uint64_t objectHandle VkPrivateDataSlotEXT privateDataSlot uint64_t data @@ -9246,36 +10429,36 @@ typedef void CAMetalLayer; void vkGetPrivateDataEXT VkDevice device VkObjectType objectType - uint64_t objectHandle + uint64_t objectHandle VkPrivateDataSlotEXT privateDataSlot uint64_t* pData - + void vkCmdCopyBuffer2KHR VkCommandBuffer commandBuffer const VkCopyBufferInfo2KHR* pCopyBufferInfo - + void vkCmdCopyImage2KHR VkCommandBuffer commandBuffer const VkCopyImageInfo2KHR* pCopyImageInfo - + void vkCmdBlitImage2KHR VkCommandBuffer commandBuffer const VkBlitImageInfo2KHR* pBlitImageInfo - + void vkCmdCopyBufferToImage2KHR VkCommandBuffer commandBuffer const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo - + void vkCmdCopyImageToBuffer2KHR VkCommandBuffer commandBuffer const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo - + void vkCmdResolveImage2KHR VkCommandBuffer commandBuffer const VkResolveImageInfo2KHR* pResolveImageInfo @@ -9306,13 +10489,216 @@ typedef void CAMetalLayer; const uint32_t* pMaxPrimitiveCounts VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo + + void vkCmdSetVertexInputEXT + VkCommandBuffer commandBuffer + uint32_t vertexBindingDescriptionCount + const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions + uint32_t vertexAttributeDescriptionCount + const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions + + + void vkCmdSetColorWriteEnableEXT + VkCommandBuffer commandBuffer + uint32_t attachmentCount + const VkBool32* pColorWriteEnables + + + void vkCmdSetEvent2KHR + VkCommandBuffer commandBuffer + VkEvent event + const VkDependencyInfoKHR* pDependencyInfo + + + void vkCmdResetEvent2KHR + VkCommandBuffer commandBuffer + VkEvent event + VkPipelineStageFlags2KHR stageMask + + + void vkCmdWaitEvents2KHR + VkCommandBuffer commandBuffer + uint32_t eventCount + const VkEvent* pEvents + const VkDependencyInfoKHR* pDependencyInfos + + + void vkCmdPipelineBarrier2KHR + VkCommandBuffer commandBuffer + const VkDependencyInfoKHR* pDependencyInfo + + + VkResult vkQueueSubmit2KHR + VkQueue queue + uint32_t submitCount + const VkSubmitInfo2KHR* pSubmits + VkFence fence + + + void vkCmdWriteTimestamp2KHR + VkCommandBuffer commandBuffer + VkPipelineStageFlags2KHR stage + VkQueryPool queryPool + uint32_t query + + + void vkCmdWriteBufferMarker2AMD + VkCommandBuffer commandBuffer + VkPipelineStageFlags2KHR stage + VkBuffer dstBuffer + VkDeviceSize dstOffset + uint32_t marker + + + void vkGetQueueCheckpointData2NV + VkQueue queue + uint32_t* pCheckpointDataCount + VkCheckpointData2NV* pCheckpointData + + + VkResult vkGetPhysicalDeviceVideoCapabilitiesKHR + VkPhysicalDevice physicalDevice + const VkVideoProfileKHR* pVideoProfile + VkVideoCapabilitiesKHR* pCapabilities + + + VkResult vkGetPhysicalDeviceVideoFormatPropertiesKHR + VkPhysicalDevice physicalDevice + const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo + uint32_t* pVideoFormatPropertyCount + VkVideoFormatPropertiesKHR* pVideoFormatProperties + + + VkResult vkCreateVideoSessionKHR + VkDevice device + const VkVideoSessionCreateInfoKHR* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkVideoSessionKHR* pVideoSession + + + void vkDestroyVideoSessionKHR + VkDevice device + VkVideoSessionKHR videoSession + const VkAllocationCallbacks* pAllocator + + + VkResult vkCreateVideoSessionParametersKHR + VkDevice device + const VkVideoSessionParametersCreateInfoKHR* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkVideoSessionParametersKHR* pVideoSessionParameters + + + VkResult vkUpdateVideoSessionParametersKHR + VkDevice device + VkVideoSessionParametersKHR videoSessionParameters + const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo + + + void vkDestroyVideoSessionParametersKHR + VkDevice device + VkVideoSessionParametersKHR videoSessionParameters + const VkAllocationCallbacks* pAllocator + + + VkResult vkGetVideoSessionMemoryRequirementsKHR + VkDevice device + VkVideoSessionKHR videoSession + uint32_t* pVideoSessionMemoryRequirementsCount + VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements + + + VkResult vkBindVideoSessionMemoryKHR + VkDevice device + VkVideoSessionKHR videoSession + uint32_t videoSessionBindMemoryCount + const VkVideoBindMemoryKHR* pVideoSessionBindMemories + + + void vkCmdDecodeVideoKHR + VkCommandBuffer commandBuffer + const VkVideoDecodeInfoKHR* pFrameInfo + + + void vkCmdBeginVideoCodingKHR + VkCommandBuffer commandBuffer + const VkVideoBeginCodingInfoKHR* pBeginInfo + + + void vkCmdControlVideoCodingKHR + VkCommandBuffer commandBuffer + const VkVideoCodingControlInfoKHR* pCodingControlInfo + + + void vkCmdEndVideoCodingKHR + VkCommandBuffer commandBuffer + const VkVideoEndCodingInfoKHR* pEndCodingInfo + + + void vkCmdEncodeVideoKHR + VkCommandBuffer commandBuffer + const VkVideoEncodeInfoKHR* pEncodeInfo + + + VkResult vkCreateCuModuleNVX + VkDevice device + const VkCuModuleCreateInfoNVX* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkCuModuleNVX* pModule + + + VkResult vkCreateCuFunctionNVX + VkDevice device + const VkCuFunctionCreateInfoNVX* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkCuFunctionNVX* pFunction + + + void vkDestroyCuModuleNVX + VkDevice device + VkCuModuleNVX module + const VkAllocationCallbacks* pAllocator + + + void vkDestroyCuFunctionNVX + VkDevice device + VkCuFunctionNVX function + const VkAllocationCallbacks* pAllocator + + + void vkCmdCuLaunchKernelNVX + VkCommandBuffer commandBuffer + const VkCuLaunchInfoNVX* pLaunchInfo + + + VkResult vkAcquireDrmDisplayEXT + VkPhysicalDevice physicalDevice + int32_t drmFd + VkDisplayKHR display + + + VkResult vkGetDrmDisplayEXT + VkPhysicalDevice physicalDevice + int32_t drmFd + uint32_t connectorId + VkDisplayKHR* display + + + VkResult vkWaitForPresentKHR + VkDevice device + VkSwapchainKHR swapchain + uint64_t presentId + uint64_t timeout + + + @@ -9337,6 +10723,7 @@ typedef void CAMetalLayer; + @@ -9348,6 +10735,11 @@ typedef void CAMetalLayer; + + + + + @@ -9359,7 +10751,6 @@ typedef void CAMetalLayer; - @@ -9404,7 +10795,6 @@ typedef void CAMetalLayer; - @@ -9509,6 +10899,7 @@ typedef void CAMetalLayer; + @@ -10258,7 +11649,6 @@ typedef void CAMetalLayer; - @@ -10533,7 +11923,7 @@ typedef void CAMetalLayer; - + @@ -10641,43 +12031,112 @@ typedef void CAMetalLayer; - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -10737,10 +12196,27 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + + + + + + + @@ -10799,22 +12275,71 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - + - - + + + + + + + + + + + + + + + + + + + + + + + @@ -10845,6 +12370,8 @@ typedef void CAMetalLayer; + + @@ -11370,7 +12897,7 @@ typedef void CAMetalLayer; - + @@ -12538,8 +14065,8 @@ typedef void CAMetalLayer; - - + + @@ -12551,11 +14078,11 @@ typedef void CAMetalLayer; - + - - - + + + @@ -12824,9 +14351,9 @@ typedef void CAMetalLayer; - + - + @@ -12849,10 +14376,28 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + + + + + + + + @@ -13284,17 +14829,17 @@ typedef void CAMetalLayer; - + - - - - + + + + @@ -13478,7 +15023,7 @@ typedef void CAMetalLayer; - + @@ -13486,10 +15031,13 @@ typedef void CAMetalLayer; - + - - + + + + + @@ -13546,10 +15094,17 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + @@ -13712,8 +15267,8 @@ typedef void CAMetalLayer; - - + + @@ -13774,10 +15329,12 @@ typedef void CAMetalLayer; - + - - + + + + @@ -13844,10 +15401,14 @@ typedef void CAMetalLayer; - + - - + + + + + + @@ -13874,7 +15435,7 @@ typedef void CAMetalLayer; - + @@ -13904,10 +15465,12 @@ typedef void CAMetalLayer; - + - - + + + + @@ -13920,7 +15483,7 @@ typedef void CAMetalLayer; - + @@ -14008,10 +15571,14 @@ typedef void CAMetalLayer; - + - - + + + + + + @@ -14063,12 +15630,44 @@ typedef void CAMetalLayer; + + + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14085,8 +15684,8 @@ typedef void CAMetalLayer; - - + + @@ -14130,7 +15729,6 @@ typedef void CAMetalLayer; - @@ -14164,10 +15762,101 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14192,6 +15881,8 @@ typedef void CAMetalLayer; + + @@ -14204,6 +15895,8 @@ typedef void CAMetalLayer; + + @@ -14218,10 +15911,12 @@ typedef void CAMetalLayer; - + - - + + + + @@ -14232,10 +15927,10 @@ typedef void CAMetalLayer; - - - - + + + + @@ -14253,12 +15948,28 @@ typedef void CAMetalLayer; - + - - - - + + + + + + + + + + + + + + + + + + + @@ -14273,10 +15984,16 @@ typedef void CAMetalLayer; - + - - + + + + + + + + @@ -14298,8 +16015,8 @@ typedef void CAMetalLayer; - - + + @@ -14323,7 +16040,7 @@ typedef void CAMetalLayer; - + @@ -14370,6 +16087,7 @@ typedef void CAMetalLayer; + @@ -14429,7 +16147,6 @@ typedef void CAMetalLayer; - @@ -14452,16 +16169,28 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + - + - - + + + + + + @@ -14524,16 +16253,32 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + - + - - + + + + + + + + + @@ -14555,24 +16300,47 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + - + - - + + + + + + + + - + - - - - + + + + + + + + + + @@ -14587,14 +16355,15 @@ typedef void CAMetalLayer; + + - - + @@ -14609,13 +16378,25 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + + - + @@ -14638,10 +16419,16 @@ typedef void CAMetalLayer; - + - - + + + + + + + + @@ -14674,6 +16461,224 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14839,10 +16844,22 @@ typedef void CAMetalLayer; - - + + + + + + + + + + + + + + @@ -14873,116 +16890,137 @@ typedef void CAMetalLayer; - + - + - + - + + + + + + - + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + - + + - + + - + + @@ -15030,16 +17068,20 @@ typedef void CAMetalLayer; - + + - + + - + + - + + @@ -15185,6 +17227,9 @@ typedef void CAMetalLayer; + + + @@ -15228,10 +17273,10 @@ typedef void CAMetalLayer; - + - +