diff --git a/include/vulkan/vulkan_beta.h b/include/vulkan/vulkan_beta.h index 4b7f2b29936..23513b32703 100644 --- a/include/vulkan/vulkan_beta.h +++ b/include/vulkan/vulkan_beta.h @@ -49,409 +49,6 @@ typedef struct VkPhysicalDevicePortabilitySubsetPropertiesKHR { } VkPhysicalDevicePortabilitySubsetPropertiesKHR; - -#define VK_KHR_deferred_host_operations 1 -VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR) -#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 3 -#define VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME "VK_KHR_deferred_host_operations" -typedef struct VkDeferredOperationInfoKHR { - VkStructureType sType; - const void* pNext; - VkDeferredOperationKHR operationHandle; -} VkDeferredOperationInfoKHR; - -typedef VkResult (VKAPI_PTR *PFN_vkCreateDeferredOperationKHR)(VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation); -typedef void (VKAPI_PTR *PFN_vkDestroyDeferredOperationKHR)(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator); -typedef uint32_t (VKAPI_PTR *PFN_vkGetDeferredOperationMaxConcurrencyKHR)(VkDevice device, VkDeferredOperationKHR operation); -typedef VkResult (VKAPI_PTR *PFN_vkGetDeferredOperationResultKHR)(VkDevice device, VkDeferredOperationKHR operation); -typedef VkResult (VKAPI_PTR *PFN_vkDeferredOperationJoinKHR)(VkDevice device, VkDeferredOperationKHR operation); - -#ifndef VK_NO_PROTOTYPES -VKAPI_ATTR VkResult VKAPI_CALL vkCreateDeferredOperationKHR( - VkDevice device, - const VkAllocationCallbacks* pAllocator, - VkDeferredOperationKHR* pDeferredOperation); - -VKAPI_ATTR void VKAPI_CALL vkDestroyDeferredOperationKHR( - VkDevice device, - VkDeferredOperationKHR operation, - const VkAllocationCallbacks* pAllocator); - -VKAPI_ATTR uint32_t VKAPI_CALL vkGetDeferredOperationMaxConcurrencyKHR( - VkDevice device, - VkDeferredOperationKHR operation); - -VKAPI_ATTR VkResult VKAPI_CALL vkGetDeferredOperationResultKHR( - VkDevice device, - VkDeferredOperationKHR operation); - -VKAPI_ATTR VkResult VKAPI_CALL vkDeferredOperationJoinKHR( - VkDevice device, - VkDeferredOperationKHR operation); -#endif - - -#define VK_KHR_pipeline_library 1 -#define VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION 1 -#define VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME "VK_KHR_pipeline_library" -typedef struct VkPipelineLibraryCreateInfoKHR { - VkStructureType sType; - const void* pNext; - uint32_t libraryCount; - const VkPipeline* pLibraries; -} VkPipelineLibraryCreateInfoKHR; - - - -#define VK_KHR_ray_tracing 1 -#define VK_KHR_RAY_TRACING_SPEC_VERSION 8 -#define VK_KHR_RAY_TRACING_EXTENSION_NAME "VK_KHR_ray_tracing" - -typedef enum VkAccelerationStructureBuildTypeKHR { - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0, - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1, - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2, - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF -} VkAccelerationStructureBuildTypeKHR; -typedef union VkDeviceOrHostAddressKHR { - VkDeviceAddress deviceAddress; - void* hostAddress; -} VkDeviceOrHostAddressKHR; - -typedef union VkDeviceOrHostAddressConstKHR { - VkDeviceAddress deviceAddress; - const void* hostAddress; -} VkDeviceOrHostAddressConstKHR; - -typedef struct VkAccelerationStructureBuildOffsetInfoKHR { - uint32_t primitiveCount; - uint32_t primitiveOffset; - uint32_t firstVertex; - uint32_t transformOffset; -} VkAccelerationStructureBuildOffsetInfoKHR; - -typedef struct VkRayTracingShaderGroupCreateInfoKHR { - VkStructureType sType; - const void* pNext; - VkRayTracingShaderGroupTypeKHR type; - uint32_t generalShader; - uint32_t closestHitShader; - uint32_t anyHitShader; - uint32_t intersectionShader; - const void* pShaderGroupCaptureReplayHandle; -} VkRayTracingShaderGroupCreateInfoKHR; - -typedef struct VkRayTracingPipelineInterfaceCreateInfoKHR { - VkStructureType sType; - const void* pNext; - uint32_t maxPayloadSize; - uint32_t maxAttributeSize; - uint32_t maxCallableSize; -} VkRayTracingPipelineInterfaceCreateInfoKHR; - -typedef struct VkRayTracingPipelineCreateInfoKHR { - VkStructureType sType; - const void* pNext; - VkPipelineCreateFlags flags; - uint32_t stageCount; - const VkPipelineShaderStageCreateInfo* pStages; - uint32_t groupCount; - const VkRayTracingShaderGroupCreateInfoKHR* pGroups; - uint32_t maxRecursionDepth; - VkPipelineLibraryCreateInfoKHR libraries; - const VkRayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface; - VkPipelineLayout layout; - VkPipeline basePipelineHandle; - int32_t basePipelineIndex; -} VkRayTracingPipelineCreateInfoKHR; - -typedef struct VkAccelerationStructureGeometryTrianglesDataKHR { - VkStructureType sType; - const void* pNext; - VkFormat vertexFormat; - VkDeviceOrHostAddressConstKHR vertexData; - VkDeviceSize vertexStride; - VkIndexType indexType; - VkDeviceOrHostAddressConstKHR indexData; - VkDeviceOrHostAddressConstKHR transformData; -} VkAccelerationStructureGeometryTrianglesDataKHR; - -typedef struct VkAccelerationStructureGeometryAabbsDataKHR { - VkStructureType sType; - const void* pNext; - VkDeviceOrHostAddressConstKHR data; - VkDeviceSize stride; -} VkAccelerationStructureGeometryAabbsDataKHR; - -typedef struct VkAccelerationStructureGeometryInstancesDataKHR { - VkStructureType sType; - const void* pNext; - VkBool32 arrayOfPointers; - VkDeviceOrHostAddressConstKHR data; -} VkAccelerationStructureGeometryInstancesDataKHR; - -typedef union VkAccelerationStructureGeometryDataKHR { - VkAccelerationStructureGeometryTrianglesDataKHR triangles; - VkAccelerationStructureGeometryAabbsDataKHR aabbs; - VkAccelerationStructureGeometryInstancesDataKHR instances; -} VkAccelerationStructureGeometryDataKHR; - -typedef struct VkAccelerationStructureGeometryKHR { - VkStructureType sType; - const void* pNext; - VkGeometryTypeKHR geometryType; - VkAccelerationStructureGeometryDataKHR geometry; - VkGeometryFlagsKHR flags; -} VkAccelerationStructureGeometryKHR; - -typedef struct VkAccelerationStructureBuildGeometryInfoKHR { - VkStructureType sType; - const void* pNext; - VkAccelerationStructureTypeKHR type; - VkBuildAccelerationStructureFlagsKHR flags; - VkBool32 update; - VkAccelerationStructureKHR srcAccelerationStructure; - VkAccelerationStructureKHR dstAccelerationStructure; - VkBool32 geometryArrayOfPointers; - uint32_t geometryCount; - const VkAccelerationStructureGeometryKHR* const* ppGeometries; - VkDeviceOrHostAddressKHR scratchData; -} VkAccelerationStructureBuildGeometryInfoKHR; - -typedef struct VkAccelerationStructureCreateGeometryTypeInfoKHR { - VkStructureType sType; - const void* pNext; - VkGeometryTypeKHR geometryType; - uint32_t maxPrimitiveCount; - VkIndexType indexType; - uint32_t maxVertexCount; - VkFormat vertexFormat; - VkBool32 allowsTransforms; -} VkAccelerationStructureCreateGeometryTypeInfoKHR; - -typedef struct VkAccelerationStructureCreateInfoKHR { - VkStructureType sType; - const void* pNext; - VkDeviceSize compactedSize; - VkAccelerationStructureTypeKHR type; - VkBuildAccelerationStructureFlagsKHR flags; - uint32_t maxGeometryCount; - const VkAccelerationStructureCreateGeometryTypeInfoKHR* pGeometryInfos; - VkDeviceAddress deviceAddress; -} VkAccelerationStructureCreateInfoKHR; - -typedef struct VkAccelerationStructureMemoryRequirementsInfoKHR { - VkStructureType sType; - const void* pNext; - VkAccelerationStructureMemoryRequirementsTypeKHR type; - VkAccelerationStructureBuildTypeKHR buildType; - VkAccelerationStructureKHR accelerationStructure; -} VkAccelerationStructureMemoryRequirementsInfoKHR; - -typedef struct VkPhysicalDeviceRayTracingFeaturesKHR { - VkStructureType sType; - void* pNext; - VkBool32 rayTracing; - VkBool32 rayTracingShaderGroupHandleCaptureReplay; - VkBool32 rayTracingShaderGroupHandleCaptureReplayMixed; - VkBool32 rayTracingAccelerationStructureCaptureReplay; - VkBool32 rayTracingIndirectTraceRays; - VkBool32 rayTracingIndirectAccelerationStructureBuild; - VkBool32 rayTracingHostAccelerationStructureCommands; - VkBool32 rayQuery; - VkBool32 rayTracingPrimitiveCulling; -} VkPhysicalDeviceRayTracingFeaturesKHR; - -typedef struct VkPhysicalDeviceRayTracingPropertiesKHR { - VkStructureType sType; - void* pNext; - uint32_t shaderGroupHandleSize; - uint32_t maxRecursionDepth; - uint32_t maxShaderGroupStride; - uint32_t shaderGroupBaseAlignment; - uint64_t maxGeometryCount; - uint64_t maxInstanceCount; - uint64_t maxPrimitiveCount; - uint32_t maxDescriptorSetAccelerationStructures; - uint32_t shaderGroupHandleCaptureReplaySize; -} VkPhysicalDeviceRayTracingPropertiesKHR; - -typedef struct VkAccelerationStructureDeviceAddressInfoKHR { - VkStructureType sType; - const void* pNext; - VkAccelerationStructureKHR accelerationStructure; -} VkAccelerationStructureDeviceAddressInfoKHR; - -typedef struct VkAccelerationStructureVersionKHR { - VkStructureType sType; - const void* pNext; - const uint8_t* versionData; -} VkAccelerationStructureVersionKHR; - -typedef struct VkStridedBufferRegionKHR { - VkBuffer buffer; - VkDeviceSize offset; - VkDeviceSize stride; - VkDeviceSize size; -} VkStridedBufferRegionKHR; - -typedef struct VkTraceRaysIndirectCommandKHR { - uint32_t width; - uint32_t height; - uint32_t depth; -} VkTraceRaysIndirectCommandKHR; - -typedef struct VkCopyAccelerationStructureToMemoryInfoKHR { - VkStructureType sType; - const void* pNext; - VkAccelerationStructureKHR src; - VkDeviceOrHostAddressKHR dst; - VkCopyAccelerationStructureModeKHR mode; -} VkCopyAccelerationStructureToMemoryInfoKHR; - -typedef struct VkCopyMemoryToAccelerationStructureInfoKHR { - VkStructureType sType; - const void* pNext; - VkDeviceOrHostAddressConstKHR src; - VkAccelerationStructureKHR dst; - VkCopyAccelerationStructureModeKHR mode; -} VkCopyMemoryToAccelerationStructureInfoKHR; - -typedef struct VkCopyAccelerationStructureInfoKHR { - VkStructureType sType; - const void* pNext; - VkAccelerationStructureKHR src; - VkAccelerationStructureKHR dst; - VkCopyAccelerationStructureModeKHR mode; -} VkCopyAccelerationStructureInfoKHR; - -typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureKHR)(VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure); -typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsKHR)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements); -typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureKHR)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos); -typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureIndirectKHR)(VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, uint32_t indirectStride); -typedef VkResult (VKAPI_PTR *PFN_vkBuildAccelerationStructureKHR)(VkDevice device, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos); -typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureKHR)(VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo); -typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureToMemoryKHR)(VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); -typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToAccelerationStructureKHR)(VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); -typedef VkResult (VKAPI_PTR *PFN_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride); -typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo); -typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureToMemoryKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); -typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); -typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysKHR)(VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth); -typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesKHR)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); -typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetAccelerationStructureDeviceAddressKHR)(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo); -typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData); -typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysIndirectKHR)(VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset); -typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)(VkDevice device, const VkAccelerationStructureVersionKHR* version); - -#ifndef VK_NO_PROTOTYPES -VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureKHR( - VkDevice device, - const VkAccelerationStructureCreateInfoKHR* pCreateInfo, - const VkAllocationCallbacks* pAllocator, - VkAccelerationStructureKHR* pAccelerationStructure); - -VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsKHR( - VkDevice device, - const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, - VkMemoryRequirements2* pMemoryRequirements); - -VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureKHR( - VkCommandBuffer commandBuffer, - uint32_t infoCount, - const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, - const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos); - -VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureIndirectKHR( - VkCommandBuffer commandBuffer, - const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, - VkBuffer indirectBuffer, - VkDeviceSize indirectOffset, - uint32_t indirectStride); - -VKAPI_ATTR VkResult VKAPI_CALL vkBuildAccelerationStructureKHR( - VkDevice device, - uint32_t infoCount, - const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, - const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos); - -VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureKHR( - VkDevice device, - const VkCopyAccelerationStructureInfoKHR* pInfo); - -VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureToMemoryKHR( - VkDevice device, - const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); - -VKAPI_ATTR VkResult VKAPI_CALL vkCopyMemoryToAccelerationStructureKHR( - VkDevice device, - const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); - -VKAPI_ATTR VkResult VKAPI_CALL vkWriteAccelerationStructuresPropertiesKHR( - VkDevice device, - uint32_t accelerationStructureCount, - const VkAccelerationStructureKHR* pAccelerationStructures, - VkQueryType queryType, - size_t dataSize, - void* pData, - size_t stride); - -VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureKHR( - VkCommandBuffer commandBuffer, - const VkCopyAccelerationStructureInfoKHR* pInfo); - -VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureToMemoryKHR( - VkCommandBuffer commandBuffer, - const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); - -VKAPI_ATTR void VKAPI_CALL vkCmdCopyMemoryToAccelerationStructureKHR( - VkCommandBuffer commandBuffer, - const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); - -VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysKHR( - VkCommandBuffer commandBuffer, - const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, - const VkStridedBufferRegionKHR* pMissShaderBindingTable, - const VkStridedBufferRegionKHR* pHitShaderBindingTable, - const VkStridedBufferRegionKHR* pCallableShaderBindingTable, - uint32_t width, - uint32_t height, - uint32_t depth); - -VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesKHR( - VkDevice device, - VkPipelineCache pipelineCache, - uint32_t createInfoCount, - const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, - const VkAllocationCallbacks* pAllocator, - VkPipeline* pPipelines); - -VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetAccelerationStructureDeviceAddressKHR( - VkDevice device, - const VkAccelerationStructureDeviceAddressInfoKHR* pInfo); - -VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( - VkDevice device, - VkPipeline pipeline, - uint32_t firstGroup, - uint32_t groupCount, - size_t dataSize, - void* pData); - -VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysIndirectKHR( - VkCommandBuffer commandBuffer, - const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, - const VkStridedBufferRegionKHR* pMissShaderBindingTable, - const VkStridedBufferRegionKHR* pHitShaderBindingTable, - const VkStridedBufferRegionKHR* pCallableShaderBindingTable, - VkBuffer buffer, - VkDeviceSize offset); - -VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceAccelerationStructureCompatibilityKHR( - VkDevice device, - const VkAccelerationStructureVersionKHR* version); -#endif - #ifdef __cplusplus } #endif diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 6f77387a07f..cc0851f77ca 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -43,7 +43,7 @@ extern "C" { #define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 158 +#define VK_HEADER_VERSION 162 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) @@ -131,7 +131,6 @@ typedef enum VkResult { VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001, VK_ERROR_VALIDATION_FAILED_EXT = -1000011001, VK_ERROR_INVALID_SHADER_NV = -1000012000, - VK_ERROR_INCOMPATIBLE_VERSION_KHR = -1000150000, VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000, VK_ERROR_NOT_PERMITTED_EXT = -1000174001, VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT = -1000255000, @@ -438,26 +437,27 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001, VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002, VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000, - VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR = 1000165006, - VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR = 1000165007, + VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR = 1000150007, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR = 1000150000, - VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR = 1000150001, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR = 1000150002, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR = 1000150003, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR = 1000150004, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR = 1000150005, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR = 1000150006, - VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR = 1000150008, - VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR = 1000150009, + VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR = 1000150009, VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR = 1000150010, VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR = 1000150011, VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR = 1000150012, - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR = 1000150013, - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR = 1000150014, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR = 1000150013, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR = 1000150014, + VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR = 1000150017, + VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR = 1000150020, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR = 1000347000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR = 1000347001, VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR = 1000150015, VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR = 1000150016, - VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR = 1000150017, VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR = 1000150018, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR = 1000348013, VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV = 1000154000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV = 1000154001, @@ -479,6 +479,8 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_GEOMETRY_NV = 1000165003, VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV = 1000165004, VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV = 1000165005, + VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = 1000165006, + VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = 1000165007, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV = 1000165008, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV = 1000165009, VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV = 1000165011, @@ -564,7 +566,6 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT = 1000260000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT = 1000265000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT = 1000267000, - VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR = 1000268000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR = 1000269000, VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR = 1000269001, VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR = 1000269002, @@ -599,8 +600,12 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT = 1000297000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000, VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV = 1000326000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV = 1000326001, + VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV = 1000326002, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT = 1000332000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT = 1000332001, + VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM = 1000333000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT = 1000335000, VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR = 1000337000, VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR = 1000337001, @@ -698,8 +703,6 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO, VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT, - VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR, - VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES, @@ -799,15 +802,15 @@ typedef enum VkObjectType { VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001, VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000, VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000, - VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000165000, + VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000, VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000, + VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000, VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = 1000210000, VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000, VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000, VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = 1000295000, VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE, VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION, - VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR, VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF } VkObjectType; @@ -1149,10 +1152,10 @@ typedef enum VkQueryType { VK_QUERY_TYPE_TIMESTAMP = 2, VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004, VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = 1000116000, - VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000165000, - VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150000, + VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000, + VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001, + VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000, VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000, - VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR, VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF } VkQueryType; @@ -1287,6 +1290,7 @@ typedef enum VkDynamicState { VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000, VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000, VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000, + VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR = 1000347000, VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004, VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006, VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV = 1000205001, @@ -1423,8 +1427,8 @@ typedef enum VkDescriptorType { VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9, VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10, VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = 1000138000, - VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000165000, - VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, + VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000, + VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000, VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF } VkDescriptorType; @@ -1682,8 +1686,8 @@ typedef enum VkPipelineStageFlagBits { VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000, VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000, VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000, - VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000, VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000, + VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000, VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00400000, VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = 0x00080000, VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = 0x00100000, @@ -1771,8 +1775,10 @@ typedef enum VkBufferUsageFlagBits { VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT = 0x00000800, VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT = 0x00001000, VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200, - VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR = 0x00000400, - VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR, + VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR = 0x00080000, + VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR = 0x00100000, + VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR = 0x00000400, + VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR, VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF @@ -1819,6 +1825,7 @@ typedef enum VkPipelineCreateFlagBits { VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR = 0x00020000, VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR = 0x00001000, VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR = 0x00002000, + VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR = 0x00080000, VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV = 0x00000020, VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR = 0x00000040, VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR = 0x00000080, @@ -6688,8 +6695,10 @@ typedef enum VkPerformanceCounterStorageKHR { } VkPerformanceCounterStorageKHR; typedef enum VkPerformanceCounterDescriptionFlagBitsKHR { - VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR = 0x00000001, - VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR = 0x00000002, + VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR = 0x00000001, + VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR = 0x00000002, + VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR = VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR, + VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR = VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR, VK_PERFORMANCE_COUNTER_DESCRIPTION_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF } VkPerformanceCounterDescriptionFlagBitsKHR; typedef VkFlags VkPerformanceCounterDescriptionFlagsKHR; @@ -7362,6 +7371,41 @@ VKAPI_ATTR uint64_t VKAPI_CALL vkGetDeviceMemoryOpaqueCaptureAddressKHR( #endif +#define VK_KHR_deferred_host_operations 1 +VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR) +#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 4 +#define VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME "VK_KHR_deferred_host_operations" +typedef VkResult (VKAPI_PTR *PFN_vkCreateDeferredOperationKHR)(VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation); +typedef void (VKAPI_PTR *PFN_vkDestroyDeferredOperationKHR)(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator); +typedef uint32_t (VKAPI_PTR *PFN_vkGetDeferredOperationMaxConcurrencyKHR)(VkDevice device, VkDeferredOperationKHR operation); +typedef VkResult (VKAPI_PTR *PFN_vkGetDeferredOperationResultKHR)(VkDevice device, VkDeferredOperationKHR operation); +typedef VkResult (VKAPI_PTR *PFN_vkDeferredOperationJoinKHR)(VkDevice device, VkDeferredOperationKHR operation); + +#ifndef VK_NO_PROTOTYPES +VKAPI_ATTR VkResult VKAPI_CALL vkCreateDeferredOperationKHR( + VkDevice device, + const VkAllocationCallbacks* pAllocator, + VkDeferredOperationKHR* pDeferredOperation); + +VKAPI_ATTR void VKAPI_CALL vkDestroyDeferredOperationKHR( + VkDevice device, + VkDeferredOperationKHR operation, + const VkAllocationCallbacks* pAllocator); + +VKAPI_ATTR uint32_t VKAPI_CALL vkGetDeferredOperationMaxConcurrencyKHR( + VkDevice device, + VkDeferredOperationKHR operation); + +VKAPI_ATTR VkResult VKAPI_CALL vkGetDeferredOperationResultKHR( + VkDevice device, + VkDeferredOperationKHR operation); + +VKAPI_ATTR VkResult VKAPI_CALL vkDeferredOperationJoinKHR( + VkDevice device, + VkDeferredOperationKHR operation); +#endif + + #define VK_KHR_pipeline_executable_properties 1 #define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION 1 #define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME "VK_KHR_pipeline_executable_properties" @@ -7452,6 +7496,18 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineExecutableInternalRepresentationsKHR #endif +#define VK_KHR_pipeline_library 1 +#define VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION 1 +#define VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME "VK_KHR_pipeline_library" +typedef struct VkPipelineLibraryCreateInfoKHR { + VkStructureType sType; + const void* pNext; + uint32_t libraryCount; + const VkPipeline* pLibraries; +} VkPipelineLibraryCreateInfoKHR; + + + #define VK_KHR_shader_non_semantic_info 1 #define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1 #define VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME "VK_KHR_shader_non_semantic_info" @@ -7645,12 +7701,12 @@ typedef enum VkDebugReportObjectTypeEXT { VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33, VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000, - VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000165000, + VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000, + VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000, VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT, - VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF } VkDebugReportObjectTypeEXT; @@ -8273,7 +8329,8 @@ VKAPI_ATTR VkResult VKAPI_CALL vkReleaseDisplayEXT( #define VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME "VK_EXT_display_surface_counter" typedef enum VkSurfaceCounterFlagBitsEXT { - VK_SURFACE_COUNTER_VBLANK_EXT = 0x00000001, + VK_SURFACE_COUNTER_VBLANK_BIT_EXT = 0x00000001, + VK_SURFACE_COUNTER_VBLANK_EXT = VK_SURFACE_COUNTER_VBLANK_BIT_EXT, VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF } VkSurfaceCounterFlagBitsEXT; typedef VkFlags VkSurfaceCounterFlagsEXT; @@ -9240,9 +9297,7 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetCoarseSampleOrderNV( #define VK_NV_ray_tracing 1 -VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR) -typedef VkAccelerationStructureKHR VkAccelerationStructureNV; - +VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNV) #define VK_NV_RAY_TRACING_SPEC_VERSION 3 #define VK_NV_RAY_TRACING_EXTENSION_NAME "VK_NV_ray_tracing" #define VK_SHADER_UNUSED_KHR (~0U) @@ -9263,7 +9318,7 @@ typedef VkRayTracingShaderGroupTypeKHR VkRayTracingShaderGroupTypeNV; typedef enum VkGeometryTypeKHR { VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0, VK_GEOMETRY_TYPE_AABBS_KHR = 1, - VK_GEOMETRY_TYPE_INSTANCES_KHR = 1000150000, + VK_GEOMETRY_TYPE_INSTANCES_KHR = 2, VK_GEOMETRY_TYPE_TRIANGLES_NV = VK_GEOMETRY_TYPE_TRIANGLES_KHR, VK_GEOMETRY_TYPE_AABBS_NV = VK_GEOMETRY_TYPE_AABBS_KHR, VK_GEOMETRY_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF @@ -9274,6 +9329,7 @@ typedef VkGeometryTypeKHR VkGeometryTypeNV; typedef enum VkAccelerationStructureTypeKHR { VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0, VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1, + VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR = 2, VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR, VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR, VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF @@ -9293,17 +9349,12 @@ typedef enum VkCopyAccelerationStructureModeKHR { typedef VkCopyAccelerationStructureModeKHR VkCopyAccelerationStructureModeNV; -typedef enum VkAccelerationStructureMemoryRequirementsTypeKHR { - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR = 0, - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR = 1, - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR = 2, - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR, - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR, - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR, - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF -} VkAccelerationStructureMemoryRequirementsTypeKHR; -typedef VkAccelerationStructureMemoryRequirementsTypeKHR VkAccelerationStructureMemoryRequirementsTypeNV; - +typedef enum VkAccelerationStructureMemoryRequirementsTypeNV { + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = 0, + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = 1, + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = 2, + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV = 0x7FFFFFFF +} VkAccelerationStructureMemoryRequirementsTypeNV; typedef enum VkGeometryFlagBitsKHR { VK_GEOMETRY_OPAQUE_BIT_KHR = 0x00000001, @@ -9432,26 +9483,22 @@ typedef struct VkAccelerationStructureCreateInfoNV { VkAccelerationStructureInfoNV info; } VkAccelerationStructureCreateInfoNV; -typedef struct VkBindAccelerationStructureMemoryInfoKHR { - VkStructureType sType; - const void* pNext; - VkAccelerationStructureKHR accelerationStructure; - VkDeviceMemory memory; - VkDeviceSize memoryOffset; - uint32_t deviceIndexCount; - const uint32_t* pDeviceIndices; -} VkBindAccelerationStructureMemoryInfoKHR; +typedef struct VkBindAccelerationStructureMemoryInfoNV { + VkStructureType sType; + const void* pNext; + VkAccelerationStructureNV accelerationStructure; + VkDeviceMemory memory; + VkDeviceSize memoryOffset; + uint32_t deviceIndexCount; + const uint32_t* pDeviceIndices; +} VkBindAccelerationStructureMemoryInfoNV; -typedef VkBindAccelerationStructureMemoryInfoKHR VkBindAccelerationStructureMemoryInfoNV; - -typedef struct VkWriteDescriptorSetAccelerationStructureKHR { - VkStructureType sType; - const void* pNext; - uint32_t accelerationStructureCount; - const VkAccelerationStructureKHR* pAccelerationStructures; -} VkWriteDescriptorSetAccelerationStructureKHR; - -typedef VkWriteDescriptorSetAccelerationStructureKHR VkWriteDescriptorSetAccelerationStructureNV; +typedef struct VkWriteDescriptorSetAccelerationStructureNV { + VkStructureType sType; + const void* pNext; + uint32_t accelerationStructureCount; + const VkAccelerationStructureNV* pAccelerationStructures; +} VkWriteDescriptorSetAccelerationStructureNV; typedef struct VkAccelerationStructureMemoryRequirementsInfoNV { VkStructureType sType; @@ -9502,20 +9549,17 @@ typedef struct VkAccelerationStructureInstanceKHR { typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV; typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureNV)(VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure); -typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureKHR)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator); -typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator); +typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator); typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements); -typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryKHR)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos); -typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos); -typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset); -typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode); +typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos); +typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset); +typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode); typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysNV)(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth); typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesNV)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData); typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesNV)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData); -typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, size_t dataSize, void* pData); -typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery); -typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery); +typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData); +typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery); typedef VkResult (VKAPI_PTR *PFN_vkCompileDeferredNV)(VkDevice device, VkPipeline pipeline, uint32_t shader); #ifndef VK_NO_PROTOTYPES @@ -9525,14 +9569,9 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureNV( const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure); -VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureKHR( - VkDevice device, - VkAccelerationStructureKHR accelerationStructure, - const VkAllocationCallbacks* pAllocator); - VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureNV( VkDevice device, - VkAccelerationStructureKHR accelerationStructure, + VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator); VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV( @@ -9540,15 +9579,10 @@ VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV( const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements); -VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryKHR( - VkDevice device, - uint32_t bindInfoCount, - const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos); - VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryNV( VkDevice device, uint32_t bindInfoCount, - const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos); + const VkBindAccelerationStructureMemoryInfoNV* pBindInfos); VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV( VkCommandBuffer commandBuffer, @@ -9556,15 +9590,15 @@ VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV( VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, - VkAccelerationStructureKHR dst, - VkAccelerationStructureKHR src, + VkAccelerationStructureNV dst, + VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset); VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureNV( VkCommandBuffer commandBuffer, - VkAccelerationStructureKHR dst, - VkAccelerationStructureKHR src, + VkAccelerationStructureNV dst, + VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode); VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysNV( @@ -9610,22 +9644,14 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesNV( VKAPI_ATTR VkResult VKAPI_CALL vkGetAccelerationStructureHandleNV( VkDevice device, - VkAccelerationStructureKHR accelerationStructure, + VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData); -VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesKHR( - VkCommandBuffer commandBuffer, - uint32_t accelerationStructureCount, - const VkAccelerationStructureKHR* pAccelerationStructures, - VkQueryType queryType, - VkQueryPool queryPool, - uint32_t firstQuery); - VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesNV( VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, - const VkAccelerationStructureKHR* pAccelerationStructures, + const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery); @@ -11260,6 +11286,63 @@ typedef struct VkDeviceDiagnosticsConfigCreateInfoNV { #define VK_QCOM_render_pass_store_ops_EXTENSION_NAME "VK_QCOM_render_pass_store_ops" +#define VK_NV_fragment_shading_rate_enums 1 +#define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION 1 +#define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME "VK_NV_fragment_shading_rate_enums" + +typedef enum VkFragmentShadingRateTypeNV { + VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV = 0, + VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV = 1, + VK_FRAGMENT_SHADING_RATE_TYPE_MAX_ENUM_NV = 0x7FFFFFFF +} VkFragmentShadingRateTypeNV; + +typedef enum VkFragmentShadingRateNV { + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0, + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 1, + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 4, + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 5, + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 6, + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 9, + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 10, + VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 11, + VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 12, + VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 13, + VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 14, + VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV = 15, + VK_FRAGMENT_SHADING_RATE_MAX_ENUM_NV = 0x7FFFFFFF +} VkFragmentShadingRateNV; +typedef struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV { + VkStructureType sType; + void* pNext; + VkBool32 fragmentShadingRateEnums; + VkBool32 supersampleFragmentShadingRates; + VkBool32 noInvocationFragmentShadingRates; +} VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV; + +typedef struct VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV { + VkStructureType sType; + void* pNext; + VkSampleCountFlagBits maxFragmentShadingRateInvocationCount; +} VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV; + +typedef struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV { + VkStructureType sType; + const void* pNext; + VkFragmentShadingRateTypeNV shadingRateType; + VkFragmentShadingRateNV shadingRate; + VkFragmentShadingRateCombinerOpKHR combinerOps[2]; +} VkPipelineFragmentShadingRateEnumStateCreateInfoNV; + +typedef void (VKAPI_PTR *PFN_vkCmdSetFragmentShadingRateEnumNV)(VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]); + +#ifndef VK_NO_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkCmdSetFragmentShadingRateEnumNV( + VkCommandBuffer commandBuffer, + VkFragmentShadingRateNV shadingRate, + const VkFragmentShadingRateCombinerOpKHR combinerOps[2]); +#endif + + #define VK_EXT_fragment_density_map2 1 #define VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION 1 #define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2" @@ -11280,6 +11363,17 @@ typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT { +#define VK_QCOM_rotated_copy_commands 1 +#define VK_QCOM_rotated_copy_commands_SPEC_VERSION 0 +#define VK_QCOM_rotated_copy_commands_EXTENSION_NAME "VK_QCOM_rotated_copy_commands" +typedef struct VkCopyCommandTransformInfoQCOM { + VkStructureType sType; + const void* pNext; + VkSurfaceTransformFlagBitsKHR transform; +} VkCopyCommandTransformInfoQCOM; + + + #define VK_EXT_image_robustness 1 #define VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION 1 #define VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_image_robustness" @@ -11302,6 +11396,450 @@ typedef struct VkPhysicalDevice4444FormatsFeaturesEXT { } VkPhysicalDevice4444FormatsFeaturesEXT; + +#define VK_KHR_acceleration_structure 1 +VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR) +#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 11 +#define VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME "VK_KHR_acceleration_structure" + +typedef enum VkBuildAccelerationStructureModeKHR { + VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR = 0, + VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR = 1, + VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR = 0x7FFFFFFF +} VkBuildAccelerationStructureModeKHR; + +typedef enum VkAccelerationStructureBuildTypeKHR { + VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0, + VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1, + VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2, + VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF +} VkAccelerationStructureBuildTypeKHR; + +typedef enum VkAccelerationStructureCompatibilityKHR { + VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0, + VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1, + VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR = 0x7FFFFFFF +} VkAccelerationStructureCompatibilityKHR; + +typedef enum VkAccelerationStructureCreateFlagBitsKHR { + VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 0x00000001, + VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF +} VkAccelerationStructureCreateFlagBitsKHR; +typedef VkFlags VkAccelerationStructureCreateFlagsKHR; +typedef union VkDeviceOrHostAddressKHR { + VkDeviceAddress deviceAddress; + void* hostAddress; +} VkDeviceOrHostAddressKHR; + +typedef union VkDeviceOrHostAddressConstKHR { + VkDeviceAddress deviceAddress; + const void* hostAddress; +} VkDeviceOrHostAddressConstKHR; + +typedef struct VkAccelerationStructureBuildRangeInfoKHR { + uint32_t primitiveCount; + uint32_t primitiveOffset; + uint32_t firstVertex; + uint32_t transformOffset; +} VkAccelerationStructureBuildRangeInfoKHR; + +typedef struct VkAccelerationStructureGeometryTrianglesDataKHR { + VkStructureType sType; + const void* pNext; + VkFormat vertexFormat; + VkDeviceOrHostAddressConstKHR vertexData; + VkDeviceSize vertexStride; + uint32_t maxVertex; + VkIndexType indexType; + VkDeviceOrHostAddressConstKHR indexData; + VkDeviceOrHostAddressConstKHR transformData; +} VkAccelerationStructureGeometryTrianglesDataKHR; + +typedef struct VkAccelerationStructureGeometryAabbsDataKHR { + VkStructureType sType; + const void* pNext; + VkDeviceOrHostAddressConstKHR data; + VkDeviceSize stride; +} VkAccelerationStructureGeometryAabbsDataKHR; + +typedef struct VkAccelerationStructureGeometryInstancesDataKHR { + VkStructureType sType; + const void* pNext; + VkBool32 arrayOfPointers; + VkDeviceOrHostAddressConstKHR data; +} VkAccelerationStructureGeometryInstancesDataKHR; + +typedef union VkAccelerationStructureGeometryDataKHR { + VkAccelerationStructureGeometryTrianglesDataKHR triangles; + VkAccelerationStructureGeometryAabbsDataKHR aabbs; + VkAccelerationStructureGeometryInstancesDataKHR instances; +} VkAccelerationStructureGeometryDataKHR; + +typedef struct VkAccelerationStructureGeometryKHR { + VkStructureType sType; + const void* pNext; + VkGeometryTypeKHR geometryType; + VkAccelerationStructureGeometryDataKHR geometry; + VkGeometryFlagsKHR flags; +} VkAccelerationStructureGeometryKHR; + +typedef struct VkAccelerationStructureBuildGeometryInfoKHR { + VkStructureType sType; + const void* pNext; + VkAccelerationStructureTypeKHR type; + VkBuildAccelerationStructureFlagsKHR flags; + VkBuildAccelerationStructureModeKHR mode; + VkAccelerationStructureKHR srcAccelerationStructure; + VkAccelerationStructureKHR dstAccelerationStructure; + uint32_t geometryCount; + const VkAccelerationStructureGeometryKHR* pGeometries; + const VkAccelerationStructureGeometryKHR* const* ppGeometries; + VkDeviceOrHostAddressKHR scratchData; +} VkAccelerationStructureBuildGeometryInfoKHR; + +typedef struct VkAccelerationStructureCreateInfoKHR { + VkStructureType sType; + const void* pNext; + VkAccelerationStructureCreateFlagsKHR createFlags; + VkBuffer buffer; + VkDeviceSize offset; + VkDeviceSize size; + VkAccelerationStructureTypeKHR type; + VkDeviceAddress deviceAddress; +} VkAccelerationStructureCreateInfoKHR; + +typedef struct VkWriteDescriptorSetAccelerationStructureKHR { + VkStructureType sType; + const void* pNext; + uint32_t accelerationStructureCount; + const VkAccelerationStructureKHR* pAccelerationStructures; +} VkWriteDescriptorSetAccelerationStructureKHR; + +typedef struct VkPhysicalDeviceAccelerationStructureFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 accelerationStructure; + VkBool32 accelerationStructureCaptureReplay; + VkBool32 accelerationStructureIndirectBuild; + VkBool32 accelerationStructureHostCommands; + VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind; +} VkPhysicalDeviceAccelerationStructureFeaturesKHR; + +typedef struct VkPhysicalDeviceAccelerationStructurePropertiesKHR { + 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; +} VkPhysicalDeviceAccelerationStructurePropertiesKHR; + +typedef struct VkAccelerationStructureDeviceAddressInfoKHR { + VkStructureType sType; + const void* pNext; + VkAccelerationStructureKHR accelerationStructure; +} VkAccelerationStructureDeviceAddressInfoKHR; + +typedef struct VkAccelerationStructureVersionInfoKHR { + VkStructureType sType; + const void* pNext; + const uint8_t* pVersionData; +} VkAccelerationStructureVersionInfoKHR; + +typedef struct VkCopyAccelerationStructureToMemoryInfoKHR { + VkStructureType sType; + const void* pNext; + VkAccelerationStructureKHR src; + VkDeviceOrHostAddressKHR dst; + VkCopyAccelerationStructureModeKHR mode; +} VkCopyAccelerationStructureToMemoryInfoKHR; + +typedef struct VkCopyMemoryToAccelerationStructureInfoKHR { + VkStructureType sType; + const void* pNext; + VkDeviceOrHostAddressConstKHR src; + VkAccelerationStructureKHR dst; + VkCopyAccelerationStructureModeKHR mode; +} VkCopyMemoryToAccelerationStructureInfoKHR; + +typedef struct VkCopyAccelerationStructureInfoKHR { + VkStructureType sType; + const void* pNext; + VkAccelerationStructureKHR src; + VkAccelerationStructureKHR dst; + VkCopyAccelerationStructureModeKHR mode; +} VkCopyAccelerationStructureInfoKHR; + +typedef struct VkAccelerationStructureBuildSizesInfoKHR { + VkStructureType sType; + const void* pNext; + VkDeviceSize accelerationStructureSize; + VkDeviceSize updateScratchSize; + VkDeviceSize buildScratchSize; +} VkAccelerationStructureBuildSizesInfoKHR; + +typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureKHR)(VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure); +typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureKHR)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator); +typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructuresKHR)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos); +typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructuresIndirectKHR)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkDeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const* ppMaxPrimitiveCounts); +typedef VkResult (VKAPI_PTR *PFN_vkBuildAccelerationStructuresKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos); +typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureInfoKHR* pInfo); +typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureToMemoryKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); +typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToAccelerationStructureKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); +typedef VkResult (VKAPI_PTR *PFN_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride); +typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo); +typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureToMemoryKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); +typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); +typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetAccelerationStructureDeviceAddressKHR)(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo); +typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery); +typedef void (VKAPI_PTR *PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)(VkDevice device, const VkAccelerationStructureVersionInfoKHR* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility); +typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureBuildSizesKHR)(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo); + +#ifndef VK_NO_PROTOTYPES +VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureKHR( + VkDevice device, + const VkAccelerationStructureCreateInfoKHR* pCreateInfo, + const VkAllocationCallbacks* pAllocator, + VkAccelerationStructureKHR* pAccelerationStructure); + +VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureKHR( + VkDevice device, + VkAccelerationStructureKHR accelerationStructure, + const VkAllocationCallbacks* pAllocator); + +VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructuresKHR( + VkCommandBuffer commandBuffer, + uint32_t infoCount, + const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, + const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos); + +VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructuresIndirectKHR( + VkCommandBuffer commandBuffer, + uint32_t infoCount, + const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, + const VkDeviceAddress* pIndirectDeviceAddresses, + const uint32_t* pIndirectStrides, + const uint32_t* const* ppMaxPrimitiveCounts); + +VKAPI_ATTR VkResult VKAPI_CALL vkBuildAccelerationStructuresKHR( + VkDevice device, + VkDeferredOperationKHR deferredOperation, + uint32_t infoCount, + const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, + const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos); + +VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureKHR( + VkDevice device, + VkDeferredOperationKHR deferredOperation, + const VkCopyAccelerationStructureInfoKHR* pInfo); + +VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureToMemoryKHR( + VkDevice device, + VkDeferredOperationKHR deferredOperation, + const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); + +VKAPI_ATTR VkResult VKAPI_CALL vkCopyMemoryToAccelerationStructureKHR( + VkDevice device, + VkDeferredOperationKHR deferredOperation, + const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); + +VKAPI_ATTR VkResult VKAPI_CALL vkWriteAccelerationStructuresPropertiesKHR( + VkDevice device, + uint32_t accelerationStructureCount, + const VkAccelerationStructureKHR* pAccelerationStructures, + VkQueryType queryType, + size_t dataSize, + void* pData, + size_t stride); + +VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureKHR( + VkCommandBuffer commandBuffer, + const VkCopyAccelerationStructureInfoKHR* pInfo); + +VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureToMemoryKHR( + VkCommandBuffer commandBuffer, + const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo); + +VKAPI_ATTR void VKAPI_CALL vkCmdCopyMemoryToAccelerationStructureKHR( + VkCommandBuffer commandBuffer, + const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo); + +VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetAccelerationStructureDeviceAddressKHR( + VkDevice device, + const VkAccelerationStructureDeviceAddressInfoKHR* pInfo); + +VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesKHR( + VkCommandBuffer commandBuffer, + uint32_t accelerationStructureCount, + const VkAccelerationStructureKHR* pAccelerationStructures, + VkQueryType queryType, + VkQueryPool queryPool, + uint32_t firstQuery); + +VKAPI_ATTR void VKAPI_CALL vkGetDeviceAccelerationStructureCompatibilityKHR( + VkDevice device, + const VkAccelerationStructureVersionInfoKHR* pVersionInfo, + VkAccelerationStructureCompatibilityKHR* pCompatibility); + +VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureBuildSizesKHR( + VkDevice device, + VkAccelerationStructureBuildTypeKHR buildType, + const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo, + const uint32_t* pMaxPrimitiveCounts, + VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo); +#endif + + +#define VK_KHR_ray_tracing_pipeline 1 +#define VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION 1 +#define VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME "VK_KHR_ray_tracing_pipeline" + +typedef enum VkShaderGroupShaderKHR { + VK_SHADER_GROUP_SHADER_GENERAL_KHR = 0, + VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR = 1, + VK_SHADER_GROUP_SHADER_ANY_HIT_KHR = 2, + VK_SHADER_GROUP_SHADER_INTERSECTION_KHR = 3, + VK_SHADER_GROUP_SHADER_MAX_ENUM_KHR = 0x7FFFFFFF +} VkShaderGroupShaderKHR; +typedef struct VkRayTracingShaderGroupCreateInfoKHR { + VkStructureType sType; + const void* pNext; + VkRayTracingShaderGroupTypeKHR type; + uint32_t generalShader; + uint32_t closestHitShader; + uint32_t anyHitShader; + uint32_t intersectionShader; + const void* pShaderGroupCaptureReplayHandle; +} VkRayTracingShaderGroupCreateInfoKHR; + +typedef struct VkRayTracingPipelineInterfaceCreateInfoKHR { + VkStructureType sType; + const void* pNext; + uint32_t maxPipelineRayPayloadSize; + uint32_t maxPipelineRayHitAttributeSize; +} VkRayTracingPipelineInterfaceCreateInfoKHR; + +typedef struct VkRayTracingPipelineCreateInfoKHR { + VkStructureType sType; + const void* pNext; + VkPipelineCreateFlags flags; + uint32_t stageCount; + const VkPipelineShaderStageCreateInfo* pStages; + uint32_t groupCount; + const VkRayTracingShaderGroupCreateInfoKHR* pGroups; + uint32_t maxPipelineRayRecursionDepth; + const VkPipelineLibraryCreateInfoKHR* pLibraryInfo; + const VkRayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface; + const VkPipelineDynamicStateCreateInfo* pDynamicState; + VkPipelineLayout layout; + VkPipeline basePipelineHandle; + int32_t basePipelineIndex; +} VkRayTracingPipelineCreateInfoKHR; + +typedef struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 rayTracingPipeline; + VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay; + VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed; + VkBool32 rayTracingPipelineTraceRaysIndirect; + VkBool32 rayTraversalPrimitiveCulling; +} VkPhysicalDeviceRayTracingPipelineFeaturesKHR; + +typedef struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR { + 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; +} VkPhysicalDeviceRayTracingPipelinePropertiesKHR; + +typedef struct VkStridedDeviceAddressRegionKHR { + VkDeviceAddress deviceAddress; + VkDeviceSize stride; + VkDeviceSize size; +} VkStridedDeviceAddressRegionKHR; + +typedef struct VkTraceRaysIndirectCommandKHR { + uint32_t width; + uint32_t height; + uint32_t depth; +} VkTraceRaysIndirectCommandKHR; + +typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysKHR)(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth); +typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesKHR)(VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); +typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData); +typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysIndirectKHR)(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress); +typedef VkDeviceSize (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupStackSizeKHR)(VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader); +typedef void (VKAPI_PTR *PFN_vkCmdSetRayTracingPipelineStackSizeKHR)(VkCommandBuffer commandBuffer, uint32_t pipelineStackSize); + +#ifndef VK_NO_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysKHR( + VkCommandBuffer commandBuffer, + const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, + const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, + const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, + const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, + uint32_t width, + uint32_t height, + uint32_t depth); + +VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesKHR( + VkDevice device, + VkDeferredOperationKHR deferredOperation, + VkPipelineCache pipelineCache, + uint32_t createInfoCount, + const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, + const VkAllocationCallbacks* pAllocator, + VkPipeline* pPipelines); + +VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( + VkDevice device, + VkPipeline pipeline, + uint32_t firstGroup, + uint32_t groupCount, + size_t dataSize, + void* pData); + +VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysIndirectKHR( + VkCommandBuffer commandBuffer, + const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, + const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, + const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, + const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, + VkDeviceAddress indirectDeviceAddress); + +VKAPI_ATTR VkDeviceSize VKAPI_CALL vkGetRayTracingShaderGroupStackSizeKHR( + VkDevice device, + VkPipeline pipeline, + uint32_t group, + VkShaderGroupShaderKHR groupShader); + +VKAPI_ATTR void VKAPI_CALL vkCmdSetRayTracingPipelineStackSizeKHR( + VkCommandBuffer commandBuffer, + uint32_t pipelineStackSize); +#endif + + +#define VK_KHR_ray_query 1 +#define VK_KHR_RAY_QUERY_SPEC_VERSION 1 +#define VK_KHR_RAY_QUERY_EXTENSION_NAME "VK_KHR_ray_query" +typedef struct VkPhysicalDeviceRayQueryFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 rayQuery; +} VkPhysicalDeviceRayQueryFeaturesKHR; + + #ifdef __cplusplus } #endif diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml index 8e3ad183164..2ea12a30be9 100644 --- a/src/vulkan/registry/vk.xml +++ b/src/vulkan/registry/vk.xml @@ -66,6 +66,7 @@ branch of the member gitlab server. + @@ -135,7 +136,7 @@ branch of the member gitlab server. // 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 // Version of this file -#define VK_HEADER_VERSION 158 +#define VK_HEADER_VERSION 162 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) @@ -218,6 +219,7 @@ typedef void CAMetalLayer; typedef VkFlags VkPipelineCreateFlags; typedef VkFlags VkColorComponentFlags; typedef VkFlags VkFenceCreateFlags; + When VkSemaphoreCreateFlagBits is first extended, need to add a requires= attribute for it to VkSemaphoreCreateFlags typedef VkFlags VkSemaphoreCreateFlags; typedef VkFlags VkFormatFeatureFlags; typedef VkFlags VkQueryControlFlags; @@ -252,6 +254,7 @@ typedef void CAMetalLayer; typedef VkFlags VkBuildAccelerationStructureFlagsKHR; typedef VkFlags VkPrivateDataSlotCreateFlagsEXT; + typedef VkFlags VkAccelerationStructureCreateFlagsKHR; typedef VkFlags VkDescriptorUpdateTemplateCreateFlags; typedef VkFlags VkPipelineCreationFeedbackFlagsEXT; @@ -366,7 +369,7 @@ typedef void CAMetalLayer; VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR) - + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNV) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPerformanceConfigurationINTEL) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPrivateDataSlotEXT) @@ -457,6 +460,7 @@ typedef void CAMetalLayer; + When VkSemaphoreCreateFlagBits is first extended, need to add a type enum tag for it here Extensions @@ -490,6 +494,8 @@ typedef void CAMetalLayer; + + @@ -498,9 +504,10 @@ typedef void CAMetalLayer; - - + + + @@ -523,6 +530,8 @@ typedef void CAMetalLayer; + + WSI extensions @@ -648,11 +657,11 @@ typedef void CAMetalLayer; Struct types VkStructureType sType - struct VkBaseOutStructure* pNext + struct VkBaseOutStructure* pNext VkStructureType sType - const struct VkBaseInStructure* pNext + const struct VkBaseInStructure* pNext int32_t x @@ -718,7 +727,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext const char* pApplicationName uint32_t applicationVersion const char* pEngineName @@ -735,7 +744,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceQueueCreateFlags flags uint32_t queueFamilyIndex uint32_t queueCount @@ -743,7 +752,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceCreateFlags flags uint32_t queueCreateInfoCount const VkDeviceQueueCreateInfo* pQueueCreateInfos @@ -755,7 +764,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkInstanceCreateFlags flags const VkApplicationInfo* pApplicationInfo uint32_t enabledLayerCount @@ -777,7 +786,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceSize allocationSizeSize of memory allocation uint32_t memoryTypeIndexIndex of the of the memory type to allocate from @@ -808,7 +817,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceMemory memoryMapped memory object VkDeviceSize offsetOffset within the memory object where the range starts VkDeviceSize sizeSize of the range within the memory object @@ -837,7 +846,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDescriptorSet dstSetDestination descriptor set uint32_t dstBindingBinding within the destination descriptor set to write uint32_t dstArrayElementArray element within the destination binding to write @@ -849,7 +858,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDescriptorSet srcSetSource descriptor set uint32_t srcBindingBinding within the source descriptor set to copy from uint32_t srcArrayElementArray element within the source binding to copy from @@ -860,7 +869,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBufferCreateFlags flagsBuffer creation flags VkDeviceSize sizeSpecified in bytes VkBufferUsageFlags usageBuffer usage flags @@ -870,7 +879,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBufferViewCreateFlagsflags VkBuffer buffer VkFormat formatOptionally specifies format of elements @@ -897,13 +906,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkAccessFlags srcAccessMaskMemory accesses from the source of the dependency to synchronize VkAccessFlags dstAccessMaskMemory accesses from the destination of the dependency to synchronize VkStructureType sType - const void* pNext + const void* pNext VkAccessFlags srcAccessMaskMemory accesses from the source of the dependency to synchronize VkAccessFlags dstAccessMaskMemory accesses from the destination of the dependency to synchronize uint32_t srcQueueFamilyIndexQueue family to transition ownership from @@ -914,7 +923,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkAccessFlags srcAccessMaskMemory accesses from the source of the dependency to synchronize VkAccessFlags dstAccessMaskMemory accesses from the destination of the dependency to synchronize VkImageLayout oldLayoutCurrent layout of the image @@ -926,7 +935,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImageCreateFlags flagsImage creation flags VkImageType imageType VkFormat format @@ -950,7 +959,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImageViewCreateFlags flags VkImage image VkImageViewType viewType @@ -995,7 +1004,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t waitSemaphoreCount const VkSemaphore* pWaitSemaphores uint32_t bufferBindCount @@ -1037,7 +1046,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkShaderModuleCreateFlags flags size_t codeSizeSpecified in bytes const uint32_t* pCodeBinary code of size codeSize @@ -1051,7 +1060,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDescriptorSetLayoutCreateFlags flags uint32_t bindingCountNumber of bindings in the descriptor set layout const VkDescriptorSetLayoutBinding* pBindingsArray of descriptor set layout bindings @@ -1062,7 +1071,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDescriptorPoolCreateFlags flags uint32_t maxSets uint32_t poolSizeCount @@ -1070,7 +1079,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDescriptorPool descriptorPool uint32_t descriptorSetCount const VkDescriptorSetLayout* pSetLayouts @@ -1088,7 +1097,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineShaderStageCreateFlags flags VkShaderStageFlagBits stageShader stage VkShaderModule moduleModule containing entry point @@ -1097,7 +1106,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCreateFlags flagsPipeline creation flags VkPipelineShaderStageCreateInfo stage VkPipelineLayout layoutInterface layout of the pipeline @@ -1117,7 +1126,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineVertexInputStateCreateFlags flags uint32_t vertexBindingDescriptionCountnumber of bindings const VkVertexInputBindingDescription* pVertexBindingDescriptions @@ -1126,20 +1135,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineInputAssemblyStateCreateFlags flags VkPrimitiveTopology topology VkBool32 primitiveRestartEnable VkStructureType sType - const void* pNext + const void* pNext VkPipelineTessellationStateCreateFlags flags uint32_t patchControlPoints VkStructureType sType - const void* pNext + const void* pNext VkPipelineViewportStateCreateFlags flags uint32_t viewportCount const VkViewport* pViewports @@ -1148,7 +1157,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineRasterizationStateCreateFlags flags VkBool32 depthClampEnable VkBool32 rasterizerDiscardEnable @@ -1163,7 +1172,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineMultisampleStateCreateFlags flags VkSampleCountFlagBits rasterizationSamplesNumber of samples used for rasterization VkBool32 sampleShadingEnableoptional (GL45) @@ -1184,7 +1193,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineColorBlendStateCreateFlags flags VkBool32 logicOpEnable VkLogicOp logicOp @@ -1194,7 +1203,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineDynamicStateCreateFlags flags uint32_t dynamicStateCount const VkDynamicState* pDynamicStates @@ -1210,7 +1219,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineDepthStencilStateCreateFlags flags VkBool32 depthTestEnable VkBool32 depthWriteEnable @@ -1224,7 +1233,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCreateFlags flagsPipeline creation flags uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage @@ -1245,7 +1254,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCacheCreateFlags flags size_t initialDataSizeSize of initial data to populate cache, in bytes const void* pInitialDataInitial data to populate cache @@ -1257,7 +1266,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineLayoutCreateFlags flags uint32_t setLayoutCountNumber of descriptor sets interfaced by the pipeline const VkDescriptorSetLayout* pSetLayoutsArray of setCount number of descriptor set layout objects defining the layout of the @@ -1266,7 +1275,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSamplerCreateFlags flags VkFilter magFilterFilter mode for magnification VkFilter minFilterFilter mode for minifiation @@ -1286,20 +1295,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkCommandPoolCreateFlags flagsCommand pool creation flags uint32_t queueFamilyIndex VkStructureType sType - const void* pNext + const void* pNext VkCommandPool commandPool VkCommandBufferLevel level uint32_t commandBufferCount VkStructureType sType - const void* pNext + const void* pNext VkRenderPass renderPassRender pass for secondary command buffers uint32_t subpass VkFramebuffer framebufferFramebuffer for secondary command buffers @@ -1309,13 +1318,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkCommandBufferUsageFlags flagsCommand buffer usage flags const VkCommandBufferInheritanceInfo* pInheritanceInfoPointer to inheritance info for secondary command buffers VkStructureType sType - const void* pNext + const void* pNext VkRenderPass renderPass VkFramebuffer framebuffer VkRect2D renderArea @@ -1378,7 +1387,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkRenderPassCreateFlags flags uint32_t attachmentCount const VkAttachmentDescription* pAttachments @@ -1389,12 +1398,12 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkEventCreateFlags flagsEvent creation flags VkStructureType sType - const void* pNext + const void* pNext VkFenceCreateFlags flagsFence creation flags @@ -1580,12 +1589,12 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSemaphoreCreateFlags flagsSemaphore creation flags VkStructureType sType - const void* pNext + const void* pNext VkQueryPoolCreateFlags flags VkQueryType queryType uint32_t queryCount @@ -1593,7 +1602,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkFramebufferCreateFlags flags VkRenderPass renderPass uint32_t attachmentCount @@ -1622,7 +1631,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t waitSemaphoreCount const VkSemaphore* pWaitSemaphores const VkPipelineStageFlags* pWaitDstStageMask @@ -1655,7 +1664,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDisplayModeCreateFlagsKHR flags VkDisplayModeParametersKHR parametersThe parameters this mode uses. @@ -1672,7 +1681,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDisplaySurfaceCreateFlagsKHR flags VkDisplayModeKHR displayModeThe mode to use when displaying this surface uint32_t planeIndexThe plane on which this surface appears. Must be between 0 and the value returned by vkGetPhysicalDeviceDisplayPlanePropertiesKHR() in pPropertyCount. @@ -1684,7 +1693,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkRect2D srcRectRectangle within the presentable image to read pixel data from when presenting to the display. VkRect2D dstRectRectangle within the current display mode's visible region to display srcRectangle in. VkBool32 persistentFor smart displays, use buffered mode. If the display properties member "persistentMode" is VK_FALSE, this member must always be VK_FALSE. @@ -1703,60 +1712,60 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkAndroidSurfaceCreateFlagsKHR flags struct ANativeWindow* window VkStructureType sType - const void* pNext + const void* pNext VkViSurfaceCreateFlagsNN flags void* window VkStructureType sType - const void* pNext + const void* pNext VkWaylandSurfaceCreateFlagsKHR flags struct wl_display* display struct wl_surface* surface VkStructureType sType - const void* pNext + const void* pNext VkWin32SurfaceCreateFlagsKHR flags HINSTANCE hinstance HWND hwnd VkStructureType sType - const void* pNext + const void* pNext VkXlibSurfaceCreateFlagsKHR flags Display* dpy Window window VkStructureType sType - const void* pNext + const void* pNext VkXcbSurfaceCreateFlagsKHR flags xcb_connection_t* connection xcb_window_t window VkStructureType sType - const void* pNext + const void* pNext VkDirectFBSurfaceCreateFlagsEXT flags IDirectFB* dfb IDirectFBSurface* surface VkStructureType sType - const void* pNext + const void* pNext VkImagePipeSurfaceCreateFlagsFUCHSIA flags zx_handle_t imagePipeHandle VkStructureType sType - const void* pNext + const void* pNext VkStreamDescriptorSurfaceCreateFlagsGGP flags GgpStreamDescriptor streamDescriptor @@ -1766,7 +1775,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSwapchainCreateFlagsKHR flags VkSurfaceKHR surfaceThe swapchain's target surface uint32_t minImageCountMinimum number of presentation images the application needs @@ -1786,7 +1795,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t waitSemaphoreCountNumber of semaphores to wait for before presenting const VkSemaphore* pWaitSemaphoresSemaphores to wait for before presenting uint32_t swapchainCountNumber of swapchains to present in this call @@ -1796,20 +1805,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDebugReportFlagsEXT flagsIndicates which events call this callback PFN_vkDebugReportCallbackEXT pfnCallbackFunction pointer of a callback function void* pUserDataUser data provided to callback function VkStructureType sTypeMust be VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT - const void* pNext + const void* pNext uint32_t disabledValidationCheckCountNumber of validation checks to disable const VkValidationCheckEXT* pDisabledValidationChecksValidation checks to disable VkStructureType sTypeMust be VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT - const void* pNext + const void* pNext uint32_t enabledValidationFeatureCountNumber of validation features to enable const VkValidationFeatureEnableEXT* pEnabledValidationFeaturesValidation features to enable uint32_t disabledValidationFeatureCountNumber of validation features to disable @@ -1817,19 +1826,19 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkRasterizationOrderAMD rasterizationOrderRasterization order to use for the pipeline VkStructureType sType - const void* pNext + const void* pNext VkDebugReportObjectTypeEXT objectTypeThe type of the object uint64_t objectThe handle of the object, cast to uint64_t const char* pObjectNameName to apply to the object VkStructureType sType - const void* pNext + const void* pNext VkDebugReportObjectTypeEXT objectTypeThe type of the object uint64_t objectThe handle of the object, cast to uint64_t uint64_t tagNameThe name of the tag to set on the object @@ -1838,23 +1847,23 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext const char* pMarkerNameName of the debug marker float color[4]Optional color for debug marker VkStructureType sType - const void* pNext + const void* pNext VkBool32 dedicatedAllocationWhether this image uses a dedicated allocation VkStructureType sType - const void* pNext + const void* pNext VkBool32 dedicatedAllocationWhether this buffer uses a dedicated allocation VkStructureType sType - const void* pNext + const void* pNext VkImage imageImage that this allocation will be bound to VkBuffer bufferBuffer that this allocation will be bound to @@ -1866,29 +1875,29 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagsNV handleTypes VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagsNV handleTypes VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagsNV handleType HANDLE handle VkStructureType sType - const void* pNext + const void* pNext const SECURITY_ATTRIBUTES* pAttributes DWORD dwAccess VkStructureType sType - const void* pNext + const void* pNext uint32_t acquireCount const VkDeviceMemory* pAcquireSyncs const uint64_t* pAcquireKeys @@ -1899,27 +1908,27 @@ typedef void CAMetalLayer; VkStructureTypesType - void* pNext + void* pNext VkBool32 deviceGeneratedCommands VkStructureType sType - const void* pNext + const void* pNext uint32_t privateDataSlotRequestCount VkStructureType sType - const void* pNext + const void* pNext VkPrivateDataSlotCreateFlagsEXT flags VkStructureType sType - void* pNext + void* pNext VkBool32 privateData VkStructureType sType - void* pNext + void* pNext uint32_t maxGraphicsShaderGroupCount uint32_t maxIndirectSequenceCount uint32_t maxIndirectCommandsTokenCount @@ -1932,7 +1941,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStages const VkPipelineVertexInputStateCreateInfo* pVertexInputState @@ -1940,7 +1949,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t groupCount const VkGraphicsShaderGroupCreateInfoNV* pGroups uint32_t pipelineCount @@ -1968,7 +1977,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkIndirectCommandsTokenTypeNV tokenType uint32_t stream uint32_t offset @@ -1985,7 +1994,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkIndirectCommandsLayoutUsageFlagsNV flags VkPipelineBindPoint pipelineBindPoint uint32_t tokenCount @@ -1995,7 +2004,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineBindPoint pipelineBindPoint VkPipeline pipeline VkIndirectCommandsLayoutNV indirectCommandsLayout @@ -2012,7 +2021,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineBindPoint pipelineBindPoint VkPipeline pipeline VkIndirectCommandsLayoutNV indirectCommandsLayout @@ -2020,31 +2029,31 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkPhysicalDeviceFeatures features VkStructureType sType - void* pNext + void* pNext VkPhysicalDeviceProperties properties VkStructureType sType - void* pNext + void* pNext VkFormatProperties formatProperties VkStructureType sType - void* pNext + void* pNext VkImageFormatProperties imageFormatProperties VkStructureType sType - const void* pNext + const void* pNext VkFormat format VkImageType type VkImageTiling tiling @@ -2054,25 +2063,25 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkQueueFamilyProperties queueFamilyProperties VkStructureType sType - void* pNext + void* pNext VkPhysicalDeviceMemoryProperties memoryProperties VkStructureType sType - void* pNext + void* pNext VkSparseImageFormatProperties properties VkStructureType sType - const void* pNext + const void* pNext VkFormat format VkImageType type VkSampleCountFlagBits samples @@ -2082,7 +2091,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext uint32_t maxPushDescriptors @@ -2094,7 +2103,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkDriverId driverID char driverName[VK_MAX_DRIVER_NAME_SIZE] char driverInfo[VK_MAX_DRIVER_INFO_SIZE] @@ -2103,7 +2112,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t swapchainCountCopy of VkPresentInfoKHR::swapchainCount const VkPresentRegionKHR* pRegionsThe regions that have changed @@ -2118,7 +2127,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 variablePointersStorageBuffer VkBool32 variablePointers @@ -2133,19 +2142,19 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagBits handleType VkStructureType sType - void* pNext + void* pNext VkExternalMemoryProperties externalMemoryProperties VkStructureType sType - const void* pNext + const void* pNext VkBufferCreateFlags flags VkBufferUsageFlags usage VkExternalMemoryHandleTypeFlagBits handleType @@ -2153,13 +2162,13 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkExternalMemoryProperties externalMemoryProperties VkStructureType sType - void* pNext + void* pNext uint8_t deviceUUID[VK_UUID_SIZE] uint8_t driverUUID[VK_UUID_SIZE] uint8_t deviceLUID[VK_LUID_SIZE] @@ -2169,67 +2178,67 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext - VkExternalMemoryHandleTypeFlags handleTypes + const void* pNext + VkExternalMemoryHandleTypeFlags handleTypes VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlags handleTypes VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlags handleTypes VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagBits handleType HANDLE handle LPCWSTR name VkStructureType sType - const void* pNext + const void* pNext const SECURITY_ATTRIBUTES* pAttributes DWORD dwAccess LPCWSTR name VkStructureType sType - void* pNext + void* pNext uint32_t memoryTypeBits VkStructureType sType - const void* pNext + const void* pNext VkDeviceMemory memory VkExternalMemoryHandleTypeFlagBits handleType VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagBits handleType int fd VkStructureType sType - void* pNext + void* pNext uint32_t memoryTypeBits VkStructureType sType - const void* pNext + const void* pNext VkDeviceMemory memory VkExternalMemoryHandleTypeFlagBits handleType VkStructureType sType - const void* pNext + const void* pNext uint32_t acquireCount const VkDeviceMemory* pAcquireSyncs const uint64_t* pAcquireKeys @@ -2240,13 +2249,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkExternalSemaphoreHandleTypeFlagBits handleType VkStructureType sType - void* pNext + void* pNext VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures @@ -2254,13 +2263,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkExternalSemaphoreHandleTypeFlags handleTypes VkStructureType sType - const void* pNext + const void* pNext VkSemaphore semaphore VkSemaphoreImportFlags flags VkExternalSemaphoreHandleTypeFlagBits handleType @@ -2269,14 +2278,14 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext const SECURITY_ATTRIBUTES* pAttributes DWORD dwAccess LPCWSTR name VkStructureType sType - const void* pNext + const void* pNext uint32_t waitSemaphoreValuesCount const uint64_t* pWaitSemaphoreValues uint32_t signalSemaphoreValuesCount @@ -2284,13 +2293,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSemaphore semaphore VkExternalSemaphoreHandleTypeFlagBits handleType VkStructureType sType - const void* pNext + const void* pNext VkSemaphore semaphore VkSemaphoreImportFlags flags VkExternalSemaphoreHandleTypeFlagBits handleType @@ -2298,19 +2307,19 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSemaphore semaphore VkExternalSemaphoreHandleTypeFlagBits handleType VkStructureType sType - const void* pNext + const void* pNext VkExternalFenceHandleTypeFlagBits handleType VkStructureType sType - void* pNext + void* pNext VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes VkExternalFenceHandleTypeFlags compatibleHandleTypes VkExternalFenceFeatureFlags externalFenceFeatures @@ -2318,13 +2327,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkExternalFenceHandleTypeFlags handleTypes VkStructureType sType - const void* pNext + const void* pNext VkFence fence VkFenceImportFlags flags VkExternalFenceHandleTypeFlagBits handleType @@ -2333,20 +2342,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext const SECURITY_ATTRIBUTES* pAttributes DWORD dwAccess LPCWSTR name VkStructureType sType - const void* pNext + const void* pNext VkFence fence VkExternalFenceHandleTypeFlagBits handleType VkStructureType sType - const void* pNext + const void* pNext VkFence fence VkFenceImportFlags flags VkExternalFenceHandleTypeFlagBits handleType @@ -2354,13 +2363,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkFence fence VkExternalFenceHandleTypeFlagBits handleType VkStructureType sType - void* pNext + void* pNext VkBool32 multiviewMultiple views in a renderpass VkBool32 multiviewGeometryShaderMultiple views in a renderpass w/ geometry shader VkBool32 multiviewTessellationShaderMultiple views in a renderpass w/ tessellation shader @@ -2368,14 +2377,14 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext uint32_t maxMultiviewViewCountmax number of views in a subpass uint32_t maxMultiviewInstanceIndexmax instance index for a draw in a multiview subpass VkStructureType sType - const void* pNext + const void* pNext uint32_t subpassCount const uint32_t* pViewMasks uint32_t dependencyCount @@ -2386,7 +2395,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext uint32_t minImageCountSupported minimum number of images for the surface uint32_t maxImageCountSupported maximum number of images for the surface, 0 for unlimited VkExtent2D currentExtentCurrent image width and height for the surface, (0, 0) if undefined @@ -2401,27 +2410,27 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDisplayPowerStateEXT powerState VkStructureType sType - const void* pNext + const void* pNext VkDeviceEventTypeEXT deviceEvent VkStructureType sType - const void* pNext + const void* pNext VkDisplayEventTypeEXT displayEvent VkStructureType sType - const void* pNext + const void* pNext VkSurfaceCounterFlagsEXT surfaceCounters VkStructureType sType - void* pNext + void* pNext uint32_t physicalDeviceCount VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE] VkBool32 subsetAllocation @@ -2429,14 +2438,14 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkMemoryAllocateFlags flags uint32_t deviceMask VkStructureType sType - const void* pNext + const void* pNext VkBuffer buffer VkDeviceMemory memory VkDeviceSize memoryOffset @@ -2444,14 +2453,14 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t deviceIndexCount const uint32_t* pDeviceIndices VkStructureType sType - const void* pNext + const void* pNext VkImage image VkDeviceMemory memory VkDeviceSize memoryOffset @@ -2459,7 +2468,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t deviceIndexCount const uint32_t* pDeviceIndices uint32_t splitInstanceBindRegionCount @@ -2468,7 +2477,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t deviceMask uint32_t deviceRenderAreaCount const VkRect2D* pDeviceRenderAreas @@ -2476,13 +2485,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t deviceMask VkStructureType sType - const void* pNext + const void* pNext uint32_t waitSemaphoreCount const uint32_t* pWaitSemaphoreDeviceIndices uint32_t commandBufferCount @@ -2493,31 +2502,31 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t resourceDeviceIndex uint32_t memoryDeviceIndex VkStructureType sType - const void* pNext + const void* pNext uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE] VkDeviceGroupPresentModeFlagsKHR modes VkStructureType sType - const void* pNext + const void* pNext VkSwapchainKHR swapchain VkStructureType sType - const void* pNext + const void* pNext VkSwapchainKHR swapchain uint32_t imageIndex VkStructureType sType - const void* pNext + const void* pNext VkSwapchainKHR swapchain uint64_t timeout VkSemaphore semaphore @@ -2526,21 +2535,21 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t swapchainCount const uint32_t* pDeviceMasks VkDeviceGroupPresentModeFlagBitsKHR mode VkStructureType sType - const void* pNext + const void* pNext uint32_t physicalDeviceCount const VkPhysicalDevice* pPhysicalDevices VkStructureType sType - const void* pNext + const void* pNext VkDeviceGroupPresentModeFlagsKHR modes @@ -2554,7 +2563,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDescriptorUpdateTemplateCreateFlags flags uint32_t descriptorUpdateEntryCountNumber of descriptor update entries to use for the update template const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntriesDescriptor update entries for the template @@ -2572,7 +2581,7 @@ typedef void CAMetalLayer; Display primary in chromaticity coordinates VkStructureType sType - const void* pNext + const void* pNext From SMPTE 2086 VkXYColorEXT displayPrimaryRedDisplay primary's Red VkXYColorEXT displayPrimaryGreenDisplay primary's Green @@ -2586,12 +2595,12 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 localDimmingSupport VkStructureType sType - const void* pNext + const void* pNext VkBool32 localDimmingEnable @@ -2606,7 +2615,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t swapchainCountCopy of VkPresentInfoKHR::swapchainCount const VkPresentTimeGOOGLE* pTimesThe earliest times to present images @@ -2616,19 +2625,19 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkIOSSurfaceCreateFlagsMVK flags const void* pView VkStructureType sType - const void* pNext + const void* pNext VkMacOSSurfaceCreateFlagsMVK flags const void* pView VkStructureType sType - const void* pNext + const void* pNext VkMetalSurfaceCreateFlagsEXT flags const CAMetalLayer* pLayer @@ -2638,7 +2647,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBool32 viewportWScalingEnable uint32_t viewportCount const VkViewportWScalingNV* pViewportWScalings @@ -2651,19 +2660,19 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineViewportSwizzleStateCreateFlagsNV flags uint32_t viewportCount const VkViewportSwizzleNV* pViewportSwizzles VkStructureType sType - void* pNext + void* pNext uint32_t maxDiscardRectanglesmax number of active discard rectangles VkStructureType sType - const void* pNext + const void* pNext VkPipelineDiscardRectangleStateCreateFlagsEXT flags VkDiscardRectangleModeEXT discardRectangleMode uint32_t discardRectangleCount @@ -2671,7 +2680,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 perViewPositionAllComponents @@ -2682,60 +2691,60 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t aspectReferenceCount const VkInputAttachmentAspectReference* pAspectReferences VkStructureType sType - const void* pNext + const void* pNext VkSurfaceKHR surface VkStructureType sType - void* pNext + void* pNext VkSurfaceCapabilitiesKHR surfaceCapabilities VkStructureType sType - void* pNext + void* pNext VkSurfaceFormatKHR surfaceFormat VkStructureType sType - void* pNext + void* pNext VkDisplayPropertiesKHR displayProperties VkStructureType sType - void* pNext + void* pNext VkDisplayPlanePropertiesKHR displayPlaneProperties VkStructureType sType - void* pNext + void* pNext VkDisplayModePropertiesKHR displayModeProperties VkStructureType sType - const void* pNext + const void* pNext VkDisplayModeKHR mode uint32_t planeIndex VkStructureType sType - void* pNext + void* pNext VkDisplayPlaneCapabilitiesKHR capabilities VkStructureType sType - void* pNext + void* pNext VkImageUsageFlags sharedPresentSupportedUsageFlagsSupported image usage flags if swapchain created using a shared present mode VkStructureType sType - void* pNext + void* pNext VkBool32 storageBuffer16BitAccess16-bit integer/floating-point variables supported in BufferBlock VkBool32 uniformAndStorageBuffer16BitAccess16-bit integer/floating-point variables supported in BufferBlock and Block VkBool32 storagePushConstant1616-bit integer/floating-point variables supported in PushConstant @@ -2744,89 +2753,89 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + 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. - VkStructureType sType - void* pNext - VkBool32 shaderSubgroupExtendedTypesFlag to specify whether subgroup operations with extended types are supported + VkStructureType sType + void* pNext + VkBool32 shaderSubgroupExtendedTypesFlag to specify whether subgroup operations with extended types are supported VkStructureType sType - const void* pNext + const void* pNext VkBuffer buffer VkStructureType sType - const void* pNext + const void* pNext VkImage image VkStructureType sType - const void* pNext + const void* pNext VkImage image VkStructureType sType - void* pNext + void* pNext VkMemoryRequirements memoryRequirements VkStructureType sType - void* pNext + void* pNext VkSparseImageMemoryRequirements memoryRequirements VkStructureType sType - void* pNext + void* pNext VkPointClippingBehavior pointClippingBehavior VkStructureType sType - void* pNext + void* pNext VkBool32 prefersDedicatedAllocation VkBool32 requiresDedicatedAllocation VkStructureType sType - const void* pNext + const void* pNext VkImage imageImage that this allocation will be bound to VkBuffer bufferBuffer that this allocation will be bound to VkStructureType sType - const void* pNext + const void* pNext VkImageUsageFlags usage VkStructureType sType - const void* pNext + const void* pNext VkTessellationDomainOrigin domainOrigin VkStructureType sType - const void* pNext + const void* pNext VkSamplerYcbcrConversion conversion VkStructureType sType - const void* pNext + const void* pNext VkFormat format VkSamplerYcbcrModelConversion ycbcrModel VkSamplerYcbcrRange ycbcrRange @@ -2839,72 +2848,72 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImageAspectFlagBits planeAspect VkStructureType sType - const void* pNext + const void* pNext VkImageAspectFlagBits planeAspect VkStructureType sType - void* pNext + void* pNext VkBool32 samplerYcbcrConversionSampler color conversion supported VkStructureType sType - void* pNext + void* pNext uint32_t combinedImageSamplerDescriptorCount VkStructureType sType - void* pNext + void* pNext VkBool32 supportsTextureGatherLODBiasAMD VkStructureType sType - const void* pNext + const void* pNext VkBuffer buffer VkDeviceSize offset VkConditionalRenderingFlagsEXT flags VkStructureType sType - const void* pNext + const void* pNext VkBool32 protectedSubmitSubmit protected command buffers VkStructureType sType - void* pNext + void* pNext VkBool32 protectedMemory VkStructureType sType - void* pNext + void* pNext VkBool32 protectedNoFault VkStructureType sType - const void* pNext + const void* pNext VkDeviceQueueCreateFlags flags uint32_t queueFamilyIndex uint32_t queueIndex VkStructureType sType - const void* pNext + const void* pNext VkPipelineCoverageToColorStateCreateFlagsNV flags VkBool32 coverageToColorEnable uint32_t coverageToColorLocation VkStructureType sType - void* pNext + void* pNext VkBool32 filterMinmaxSingleComponentFormats VkBool32 filterMinmaxImageComponentMapping @@ -2915,7 +2924,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSampleCountFlagBits sampleLocationsPerPixel VkExtent2D sampleLocationGridSize uint32_t sampleLocationsCount @@ -2931,7 +2940,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t attachmentInitialSampleLocationsCount const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations uint32_t postSubpassSampleLocationsCount @@ -2939,13 +2948,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBool32 sampleLocationsEnable VkSampleLocationsInfoEXT sampleLocationsInfo VkStructureType sType - void* pNext + void* pNext VkSampleCountFlags sampleLocationSampleCounts VkExtent2D maxSampleLocationGridSize float sampleLocationCoordinateRange[2] @@ -2954,23 +2963,23 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkExtent2D maxSampleLocationGridSize VkStructureType sType - const void* pNext + const void* pNext VkSamplerReductionMode reductionMode VkStructureType sType - void* pNext + void* pNext VkBool32 advancedBlendCoherentOperations VkStructureType sType - void* pNext + void* pNext uint32_t advancedBlendMaxColorAttachments VkBool32 advancedBlendIndependentBlend VkBool32 advancedBlendNonPremultipliedSrcColor @@ -2980,20 +2989,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBool32 srcPremultiplied VkBool32 dstPremultiplied VkBlendOverlapEXT blendOverlap VkStructureType sType - void* pNext + void* pNext VkBool32 inlineUniformBlock VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind VkStructureType sType - void* pNext + void* pNext uint32_t maxInlineUniformBlockSize uint32_t maxPerStageDescriptorInlineUniformBlocks uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks @@ -3002,18 +3011,18 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t dataSize const void* pData VkStructureType sType - const void* pNext + const void* pNext uint32_t maxInlineUniformBlockBindings VkStructureType sType - const void* pNext + const void* pNext VkPipelineCoverageModulationStateCreateFlagsNV flags VkCoverageModulationModeNV coverageModulationMode VkBool32 coverageModulationTableEnable @@ -3022,45 +3031,45 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t viewFormatCount const VkFormat* pViewFormats VkStructureType sType - const void* pNext + const void* pNext VkValidationCacheCreateFlagsEXT flags size_t initialDataSize const void* pInitialData VkStructureType sType - const void* pNext + const void* pNext VkValidationCacheEXT validationCache VkStructureType sType - void* pNext + void* pNext uint32_t maxPerSetDescriptors VkDeviceSize maxMemoryAllocationSize VkStructureType sType - void* pNext + void* pNext VkBool32 supported VkStructureType sType - void* pNext + void* pNext VkBool32 shaderDrawParameters VkStructureType sType - void* pNext + void* pNext VkBool32 shaderFloat1616-bit floats (halfs) in shaders VkBool32 shaderInt88-bit integers in shaders @@ -3068,7 +3077,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkShaderFloatControlsIndependence denormBehaviorIndependence VkShaderFloatControlsIndependence roundingModeIndependence VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf @@ -3090,7 +3099,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 hostQueryReset @@ -3100,7 +3109,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext const void* handle int stride int format @@ -3109,12 +3118,12 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSwapchainImageUsageFlagsANDROID usage VkStructureType sType - const void* pNext + const void* pNext VkBool32 sharedImage @@ -3135,19 +3144,19 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkQueueGlobalPriorityEXT globalPriority VkStructureType sType - const void* pNext + const void* pNext VkObjectType objectType uint64_t objectHandle const char* pObjectName VkStructureType sType - const void* pNext + const void* pNext VkObjectType objectType uint64_t objectHandle uint64_t tagName @@ -3156,13 +3165,13 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext const char* pLabelName float color[4] VkStructureType sType - const void* pNext + const void* pNext VkDebugUtilsMessengerCreateFlagsEXT flags VkDebugUtilsMessageSeverityFlagsEXT messageSeverity VkDebugUtilsMessageTypeFlagsEXT messageType @@ -3185,7 +3194,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 deviceMemoryReport @@ -3197,7 +3206,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceMemoryReportFlagsEXT flags VkDeviceMemoryReportEventTypeEXT type uint64_t memoryObjectId @@ -3208,23 +3217,23 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkExternalMemoryHandleTypeFlagBits handleType void* pHostPointer VkStructureType sType - void* pNext + void* pNext uint32_t memoryTypeBits VkStructureType sType - void* pNext + void* pNext VkDeviceSize minImportedHostPointerAlignment VkStructureType sType - void* pNext + 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 @@ -3237,12 +3246,12 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkTimeDomainEXT timeDomain VkStructureType sType - void* pNext + void* pNext uint32_t shaderEngineCountnumber of shader engines uint32_t shaderArraysPerEngineCountnumber of shader arrays uint32_t computeUnitsPerShaderArraynumber of physical CUs per shader array @@ -3260,20 +3269,20 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNextPointer to next structure + void* pNextPointer to next structure VkShaderCorePropertiesFlagsAMD shaderCoreFeaturesfeatures supported by the shader core uint32_t activeComputeUnitCountnumber of active compute units across all shader engines/arrays VkStructureType sType - const void* pNext + const void* pNext VkPipelineRasterizationConservativeStateCreateFlagsEXT flagsReserved VkConservativeRasterizationModeEXT conservativeRasterizationModeConservative rasterization mode float extraPrimitiveOverestimationSizeExtra overestimation to add to the primitive VkStructureType sType - void* pNext + void* pNext VkBool32 shaderInputAttachmentArrayDynamicIndexing VkBool32 shaderUniformTexelBufferArrayDynamicIndexing VkBool32 shaderStorageTexelBufferArrayDynamicIndexing @@ -3298,7 +3307,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext uint32_t maxUpdateAfterBindDescriptorsInAllPools VkBool32 shaderUniformBufferArrayNonUniformIndexingNative VkBool32 shaderSampledImageArrayNonUniformIndexingNative @@ -3326,27 +3335,27 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t bindingCount const VkDescriptorBindingFlags* pBindingFlags VkStructureType sType - const void* pNext + const void* pNext uint32_t descriptorSetCount const uint32_t* pDescriptorCounts VkStructureType sType - void* pNext + void* pNext uint32_t maxVariableDescriptorCount VkStructureType sType - const void* pNext + const void* pNext VkAttachmentDescriptionFlags flags VkFormat format VkSampleCountFlagBits samples @@ -3360,7 +3369,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t attachment VkImageLayout layout VkImageAspectFlags aspectMask @@ -3368,7 +3377,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSubpassDescriptionFlags flags VkPipelineBindPoint pipelineBindPoint uint32_t viewMask @@ -3384,7 +3393,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t srcSubpass uint32_t dstSubpass VkPipelineStageFlags srcStageMask @@ -3397,7 +3406,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkRenderPassCreateFlags flags uint32_t attachmentCount const VkAttachmentDescription2* pAttachments @@ -3411,37 +3420,37 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSubpassContents contents VkStructureType sType - const void* pNext + const void* pNext VkStructureType sType - void* pNext + void* pNext VkBool32 timelineSemaphore VkStructureType sType - void* pNext + void* pNext uint64_t maxTimelineSemaphoreValueDifference VkStructureType sType - const void* pNext + const void* pNext VkSemaphoreType semaphoreType uint64_t initialValue VkStructureType sType - const void* pNext + const void* pNext uint32_t waitSemaphoreValueCount const uint64_t* pWaitSemaphoreValues uint32_t signalSemaphoreValueCount @@ -3450,7 +3459,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSemaphoreWaitFlags flags uint32_t semaphoreCount const VkSemaphore* pSemaphores @@ -3459,7 +3468,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkSemaphore semaphore uint64_t value @@ -3470,18 +3479,18 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t vertexBindingDivisorCount const VkVertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors VkStructureType sType - void* pNext + void* pNext uint32_t maxVertexAttribDivisormax value of vertex attribute divisor VkStructureType sType - void* pNext + void* pNext uint32_t pciDomain uint32_t pciBus uint32_t pciDevice @@ -3489,28 +3498,28 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext struct AHardwareBuffer* buffer VkStructureType sType - void* pNext + void* pNext uint64_t androidHardwareBufferUsage VkStructureType sType - void* pNext + void* pNext VkDeviceSize allocationSize uint32_t memoryTypeBits VkStructureType sType - const void* pNext + const void* pNext VkDeviceMemory memory VkStructureType sType - void* pNext + void* pNext VkFormat format uint64_t externalFormat VkFormatFeatureFlags formatFeatures @@ -3522,17 +3531,17 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBool32 conditionalRenderingEnableWhether this secondary command buffer may be executed during an active conditional rendering VkStructureType sType - void* pNext + void* pNext uint64_t externalFormat VkStructureType sType - void* pNext + void* pNext VkBool32 storageBuffer8BitAccess8-bit integer variables supported in StorageBuffer VkBool32 uniformAndStorageBuffer8BitAccess8-bit integer variables supported in StorageBuffer and Uniform VkBool32 storagePushConstant88-bit integer variables supported in PushConstant @@ -3540,13 +3549,13 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 conditionalRendering VkBool32 inheritedConditionalRendering VkStructureType sType - void* pNext + void* pNext VkBool32 vulkanMemoryModel VkBool32 vulkanMemoryModelDeviceScope VkBool32 vulkanMemoryModelAvailabilityVisibilityChains @@ -3554,14 +3563,14 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 shaderBufferInt64Atomics VkBool32 shaderSharedInt64Atomics VkStructureType sType - void* pNext + void* pNext VkBool32 shaderBufferFloat32Atomics VkBool32 shaderBufferFloat32AtomicAdd VkBool32 shaderBufferFloat64Atomics @@ -3577,24 +3586,24 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 vertexAttributeInstanceRateDivisor VkBool32 vertexAttributeInstanceRateZeroDivisor VkStructureType sType - void* pNext + void* pNext VkPipelineStageFlags checkpointExecutionStageMask VkStructureType sType - void* pNext + void* pNext VkPipelineStageFlagBits stage void* pCheckpointMarker VkStructureType sType - void* pNext + 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 @@ -3603,31 +3612,31 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext - VkResolveModeFlagBits depthResolveModedepth resolve mode - VkResolveModeFlagBits stencilResolveModestencil resolve mode + const void* pNext + VkResolveModeFlagBits depthResolveModedepth resolve mode + VkResolveModeFlagBits stencilResolveModestencil resolve mode const VkAttachmentReference2* pDepthStencilResolveAttachmentdepth/stencil resolve attachment VkStructureType sType - const void* pNext + const void* pNext VkFormat decodeMode VkStructureType sType - void* pNext + void* pNext VkBool32 decodeModeSharedExponent VkStructureType sType - void* pNext + void* pNext VkBool32 transformFeedback VkBool32 geometryStreams VkStructureType sType - void* pNext + void* pNext uint32_t maxTransformFeedbackStreams uint32_t maxTransformFeedbackBuffers VkDeviceSize maxTransformFeedbackBufferSize @@ -3641,55 +3650,55 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineRasterizationStateStreamCreateFlagsEXT flags uint32_t rasterizationStream VkStructureTypesType - void* pNext + void* pNext VkBool32 representativeFragmentTest VkStructureType sType - const void* pNext + const void* pNext VkBool32 representativeFragmentTestEnable VkStructureType sType - void* pNext + void* pNext VkBool32 exclusiveScissor VkStructureType sType - const void* pNext + const void* pNext uint32_t exclusiveScissorCount const VkRect2D* pExclusiveScissors VkStructureType sType - void* pNext + void* pNext VkBool32 cornerSampledImage VkStructureType sType - void* pNext + void* pNext VkBool32 computeDerivativeGroupQuads VkBool32 computeDerivativeGroupLinear VkStructureType sType - void* pNext + void* pNext VkBool32 fragmentShaderBarycentric VkStructureType sType - void* pNext + void* pNext VkBool32 imageFootprint VkStructureType sType - void* pNext + void* pNext VkBool32 dedicatedAllocationImageAliasing @@ -3698,20 +3707,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBool32 shadingRateImageEnable uint32_t viewportCount const VkShadingRatePaletteNV* pShadingRatePalettes VkStructureType sType - void* pNext + void* pNext VkBool32 shadingRateImage VkBool32 shadingRateCoarseSampleOrder VkStructureType sType - void* pNext + void* pNext VkExtent2D shadingRateTexelSize uint32_t shadingRatePaletteSize uint32_t shadingRateMaxCoarseSamples @@ -3729,20 +3738,20 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkCoarseSampleOrderTypeNV sampleOrderType uint32_t customSampleOrderCount const VkCoarseSampleOrderCustomNV* pCustomSampleOrders VkStructureType sType - void* pNext + void* pNext VkBool32 taskShader VkBool32 meshShader VkStructureType sType - void* pNext + void* pNext uint32_t maxDrawMeshTasksCount uint32_t maxTaskWorkGroupInvocations uint32_t maxTaskWorkGroupSize[3] @@ -3763,7 +3772,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkRayTracingShaderGroupTypeKHR type uint32_t generalShader uint32_t closestHitShader @@ -3772,7 +3781,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkRayTracingShaderGroupTypeKHR type uint32_t generalShader uint32_t closestHitShader @@ -3782,7 +3791,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCreateFlags flagsPipeline creation flags uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage @@ -3795,22 +3804,23 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCreateFlags flagsPipeline creation flags uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage uint32_t groupCount const VkRayTracingShaderGroupCreateInfoKHR* pGroups - uint32_t maxRecursionDepth - VkPipelineLibraryCreateInfoKHR libraries + uint32_t maxPipelineRayRecursionDepth + const VkPipelineLibraryCreateInfoKHR* pLibraryInfo const VkRayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface + const VkPipelineDynamicStateCreateInfo* pDynamicState VkPipelineLayout layoutInterface layout of the pipeline VkPipeline basePipelineHandleIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is nonzero, it specifies the handle of the base pipeline this is a derivative of int32_t basePipelineIndexIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is not -1, it specifies an index into pCreateInfos of the base pipeline this is a derivative of VkStructureType sType - const void* pNext + const void* pNext VkBuffer vertexData VkDeviceSize vertexOffset uint32_t vertexCount @@ -3825,7 +3835,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBuffer aabbData uint32_t numAABBs uint32_t strideStride in bytes between AABBs @@ -3837,14 +3847,14 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkGeometryTypeKHR geometryType VkGeometryDataNV geometry VkGeometryFlagsKHR flags VkStructureType sType - const void* pNext + const void* pNext VkAccelerationStructureTypeNV type VkBuildAccelerationStructureFlagsNVflags uint32_t instanceCount @@ -3853,69 +3863,87 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceSize compactedSize VkAccelerationStructureInfoNV info - - VkStructureType sType - const void* pNext - VkAccelerationStructureKHR accelerationStructure + + VkStructureType sType + const void* pNext + VkAccelerationStructureNV accelerationStructure VkDeviceMemory memory VkDeviceSize memoryOffset uint32_t deviceIndexCount const uint32_t* pDeviceIndices - VkStructureType sType - const void* pNext + const void* pNext uint32_t accelerationStructureCount - const VkAccelerationStructureKHR* pAccelerationStructures + const VkAccelerationStructureKHR* pAccelerationStructures - - - VkStructureType sType - const void* pNext - VkAccelerationStructureMemoryRequirementsTypeKHR type - VkAccelerationStructureBuildTypeKHR buildType - VkAccelerationStructureKHR accelerationStructure + + VkStructureType sType + const void* pNext + uint32_t accelerationStructureCount + const VkAccelerationStructureNV* pAccelerationStructures VkStructureType sType - const void* pNext + const void* pNext VkAccelerationStructureMemoryRequirementsTypeNV type VkAccelerationStructureNV accelerationStructure - - VkStructureType sType - void* pNext - VkBool32 rayTracing - VkBool32 rayTracingShaderGroupHandleCaptureReplay - VkBool32 rayTracingShaderGroupHandleCaptureReplayMixed - VkBool32 rayTracingAccelerationStructureCaptureReplay - VkBool32 rayTracingIndirectTraceRays - VkBool32 rayTracingIndirectAccelerationStructureBuild - VkBool32 rayTracingHostAccelerationStructureCommands - VkBool32 rayQuery - VkBool32 rayTracingPrimitiveCulling + + VkStructureType sType + void* pNext + VkBool32 accelerationStructure + VkBool32 accelerationStructureCaptureReplay + VkBool32 accelerationStructureIndirectBuild + VkBool32 accelerationStructureHostCommands + VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind - - VkStructureType sType - void* pNext - uint32_t shaderGroupHandleSize - uint32_t maxRecursionDepth - uint32_t maxShaderGroupStride - uint32_t shaderGroupBaseAlignment + + VkStructureType sType + void* pNext + VkBool32 rayTracingPipeline + VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay + VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed + VkBool32 rayTracingPipelineTraceRaysIndirect + VkBool32 rayTraversalPrimitiveCulling + + + VkStructureType sType + void* pNext + VkBool32 rayQuery + + + 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 + + + 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 VkStructureType sType - void* pNext + void* pNext uint32_t shaderGroupHandleSize uint32_t maxRecursionDepth uint32_t maxShaderGroupStride @@ -3925,9 +3953,8 @@ typedef void CAMetalLayer; uint64_t maxTriangleCount uint32_t maxDescriptorSetAccelerationStructures - - VkBuffer buffer - VkDeviceSize offset + + VkDeviceAddress deviceAddress VkDeviceSize stride VkDeviceSize size @@ -3938,7 +3965,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext uint32_t drmFormatModifierCount VkDrmFormatModifierPropertiesEXT* pDrmFormatModifierProperties @@ -3949,7 +3976,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint64_t drmFormatModifier VkSharingMode sharingMode uint32_t queueFamilyIndexCount @@ -3957,55 +3984,55 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t drmFormatModifierCount const uint64_t* pDrmFormatModifiers VkStructureType sType - const void* pNext + const void* pNext uint64_t drmFormatModifier uint32_t drmFormatModifierPlaneCount const VkSubresourceLayout* pPlaneLayouts VkStructureType sType - void* pNext + void* pNext uint64_t drmFormatModifier VkStructureType sType - const void* pNext + const void* pNext VkImageUsageFlags stencilUsage VkStructureType sType - const void* pNext + const void* pNext VkMemoryOverallocationBehaviorAMD overallocationBehavior VkStructureType sType - void* pNext + void* pNext VkBool32 fragmentDensityMap VkBool32 fragmentDensityMapDynamic VkBool32 fragmentDensityMapNonSubsampledImages VkStructureType sType - void* pNext + void* pNext VkBool32 fragmentDensityMapDeferred VkStructureType sType - void* pNext + void* pNext VkExtent2D minFragmentDensityTexelSize VkExtent2D maxFragmentDensityTexelSize VkBool32 fragmentDensityInvocations VkStructureType sType - void* pNext + void* pNext VkBool32 subsampledLoads VkBool32 subsampledCoarseReconstructionEarlyAccess uint32_t maxSubsampledArrayLayers @@ -4013,56 +4040,56 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkAttachmentReference fragmentDensityMapAttachment VkStructureType sType - void* pNext + void* pNext VkBool32 scalarBlockLayout VkStructureType sType - const void* pNext + const void* pNext VkBool32 supportsProtectedRepresents if surface can be protected VkStructureType sType - void* pNext + void* pNext VkBool32 uniformBufferStandardLayout VkStructureType sType - void* pNext + void* pNext VkBool32 depthClipEnable VkStructureType sType - const void* pNext + const void* pNext VkPipelineRasterizationDepthClipStateCreateFlagsEXT flagsReserved VkBool32 depthClipEnable VkStructureType sType - void* pNext + void* pNext VkDeviceSize heapBudget[VK_MAX_MEMORY_HEAPS] VkDeviceSize heapUsage[VK_MAX_MEMORY_HEAPS] VkStructureType sType - void* pNext + void* pNext VkBool32 memoryPriority VkStructureType sType - const void* pNext + const void* pNext float priority VkStructureType sType - void* pNext + void* pNext VkBool32 bufferDeviceAddress VkBool32 bufferDeviceAddressCaptureReplay VkBool32 bufferDeviceAddressMultiDevice @@ -4070,7 +4097,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 bufferDeviceAddress VkBool32 bufferDeviceAddressCaptureReplay VkBool32 bufferDeviceAddressMultiDevice @@ -4078,49 +4105,49 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBuffer buffer VkStructureType sType - const void* pNext + const void* pNext uint64_t opaqueCaptureAddress VkStructureType sType - const void* pNext + const void* pNext VkDeviceAddress deviceAddress VkStructureType sType - void* pNext + void* pNext VkImageViewType imageViewType VkStructureType sType - void* pNext + void* pNext VkBool32 filterCubicThe combinations of format, image type (and image view type if provided) can be filtered with VK_FILTER_CUBIC_EXT VkBool32 filterCubicMinmaxThe combination of format, image type (and image view type if provided) can be filtered with VK_FILTER_CUBIC_EXT and ReductionMode of Min or Max VkStructureType sType - void* pNext + void* pNext VkBool32 imagelessFramebuffer VkStructureType sType - const void* pNext + const void* pNext uint32_t attachmentImageInfoCount const VkFramebufferAttachmentImageInfo* pAttachmentImageInfos VkStructureType sType - const void* pNext + const void* pNext VkImageCreateFlags flagsImage creation flags VkImageUsageFlags usageImage usage flags uint32_t width @@ -4132,30 +4159,30 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t attachmentCount const VkImageView* pAttachments VkStructureType sType - void* pNext + void* pNext VkBool32 textureCompressionASTC_HDR VkStructureType sType - void* pNext + void* pNext VkBool32 cooperativeMatrix VkBool32 cooperativeMatrixRobustBufferAccess VkStructureType sType - void* pNext + void* pNext VkShaderStageFlags cooperativeMatrixSupportedStages VkStructureType sType - void* pNext + void* pNext uint32_t MSize uint32_t NSize uint32_t KSize @@ -4167,25 +4194,25 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 ycbcrImageArrays VkStructureType sType - const void* pNext + const void* pNext VkImageView imageView VkDescriptorType descriptorType VkSampler sampler VkStructureType sType - void* pNext + void* pNext VkDeviceAddress deviceAddress VkDeviceSize size VkStructureType sType - const void* pNext + const void* pNext GgpFrameToken frameToken @@ -4194,39 +4221,40 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCreationFeedbackEXT* pPipelineCreationFeedbackOutput pipeline creation feedback. uint32_t pipelineStageCreationFeedbackCount VkPipelineCreationFeedbackEXT* pPipelineStageCreationFeedbacksOne entry for each shader stage specified in the parent Vk*PipelineCreateInfo struct VkStructureType sType - void* pNext + void* pNext VkFullScreenExclusiveEXT fullScreenExclusive VkStructureType sType - const void* pNext + const void* pNext HMONITOR hmonitor VkStructureType sType - void* pNext + void* pNext VkBool32 fullScreenExclusiveSupported VkStructureType sType - void* pNext + void* pNext VkBool32 performanceCounterQueryPoolsperformance counters supported in query pools - VkBool32 performanceCounterMultipleQueryPoolsperformance counters from multiple query pools can be accessed in the same primary command buffer + VkBool32 performanceCounterMultipleQueryPoolsperformance counters from multiple query pools can be accessed in the same primary command buffer + - VkStructureType sType - void* pNext - VkBool32 allowCommandBufferQueryCopiesFlag to specify whether performance queries are allowed to be used in vkCmdCopyQueryPoolResults + VkStructureType sType + void* pNext + VkBool32 allowCommandBufferQueryCopiesFlag to specify whether performance queries are allowed to be used in vkCmdCopyQueryPoolResults VkStructureType sType - const void* pNext + const void* pNext VkPerformanceCounterUnitKHR unit VkPerformanceCounterScopeKHR scope VkPerformanceCounterStorageKHR storage @@ -4234,7 +4262,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPerformanceCounterDescriptionFlagsKHR flags char name[VK_MAX_DESCRIPTION_SIZE] char category[VK_MAX_DESCRIPTION_SIZE] @@ -4242,7 +4270,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext uint32_t queueFamilyIndex uint32_t counterIndexCount const uint32_t* pCounterIndices @@ -4257,34 +4285,34 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkAcquireProfilingLockFlagsKHR flagsAcquire profiling lock flags uint64_t timeout VkStructureType sType - const void* pNext + const void* pNext uint32_t counterPassIndexIndex for which counter pass to submit VkStructureType sType - const void* pNext + const void* pNext VkHeadlessSurfaceCreateFlagsEXT flags VkStructureTypesType - void* pNext + void* pNext VkBool32 coverageReductionMode VkStructureType sType - const void* pNext + const void* pNext VkPipelineCoverageReductionStateCreateFlagsNV flags VkCoverageReductionModeNV coverageReductionMode VkStructureType sType - void* pNext + void* pNext VkCoverageReductionModeNV coverageReductionMode VkSampleCountFlagBits rasterizationSamples VkSampleCountFlags depthStencilSamples @@ -4292,7 +4320,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 shaderIntegerFunctions2 @@ -4308,98 +4336,98 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext void* pUserData VkStructureType sType - const void* pNext + const void* pNext VkQueryPoolSamplingModeINTEL performanceCountersSampling VkStructureType sType - const void* pNext + const void* pNext uint64_t marker VkStructureType sType - const void* pNext + const void* pNext uint32_t marker VkStructureType sType - const void* pNext + const void* pNext VkPerformanceOverrideTypeINTEL type VkBool32 enable uint64_t parameter VkStructureType sType - const void* pNext + const void* pNext VkPerformanceConfigurationTypeINTEL type VkStructureType sType - void* pNext + void* pNext VkBool32 shaderSubgroupClock VkBool32 shaderDeviceClock VkStructureType sType - void* pNext + void* pNext VkBool32 indexTypeUint8 VkStructureType sType - void* pNext + void* pNext uint32_t shaderSMCount uint32_t shaderWarpsPerSM VkStructureTypesType - void* pNext + void* pNext VkBool32 shaderSMBuiltins VkStructureType sType - void* pNextPointer to next structure + void* pNextPointer to next structure VkBool32 fragmentShaderSampleInterlock VkBool32 fragmentShaderPixelInterlock VkBool32 fragmentShaderShadingRateInterlock VkStructureTypesType - void* pNext + void* pNext VkBool32 separateDepthStencilLayouts VkStructureTypesType - void* pNext + void* pNext VkImageLayout stencilLayout VkStructureTypesType - void* pNext + void* pNext VkImageLayout stencilInitialLayout VkImageLayout stencilFinalLayout VkStructureType sType - void* pNext + void* pNext VkBool32 pipelineExecutableInfo VkStructureType sType - const void* pNext + const void* pNext VkPipeline pipeline VkStructureType sType - void* pNext + void* pNext VkShaderStageFlags stages char name[VK_MAX_DESCRIPTION_SIZE] char description[VK_MAX_DESCRIPTION_SIZE] @@ -4407,7 +4435,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipeline pipeline uint32_t executableIndex @@ -4419,7 +4447,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext char name[VK_MAX_DESCRIPTION_SIZE] char description[VK_MAX_DESCRIPTION_SIZE] VkPipelineExecutableStatisticFormatKHR format @@ -4427,7 +4455,7 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext char name[VK_MAX_DESCRIPTION_SIZE] char description[VK_MAX_DESCRIPTION_SIZE] VkBool32 isText @@ -4436,56 +4464,56 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 shaderDemoteToHelperInvocation VkStructureType sType - void* pNext + void* pNext VkBool32 texelBufferAlignment VkStructureType sType - void* pNext + void* pNext VkDeviceSize storageTexelBufferOffsetAlignmentBytes VkBool32 storageTexelBufferOffsetSingleTexelAlignment VkDeviceSize uniformTexelBufferOffsetAlignmentBytes VkBool32 uniformTexelBufferOffsetSingleTexelAlignment - VkStructureType sType - void* pNext - VkBool32 subgroupSizeControl - VkBool32 computeFullSubgroups + VkStructureType sType + void* pNext + VkBool32 subgroupSizeControl + VkBool32 computeFullSubgroups - 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 + 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 VkStructureType sType - void* pNext + void* pNext uint32_t requiredSubgroupSize VkStructureType sType - const void* pNext + const void* pNext uint64_t opaqueCaptureAddress VkStructureType sType - const void* pNext + const void* pNext VkDeviceMemory memory VkStructureType sType - void* pNext + void* pNext VkBool32 rectangularLines VkBool32 bresenhamLines VkBool32 smoothLines @@ -4495,12 +4523,12 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext uint32_t lineSubPixelPrecisionBits VkStructureType sType - const void* pNext + const void* pNext VkLineRasterizationModeEXT lineRasterizationMode VkBool32 stippledLineEnable uint32_t lineStippleFactor @@ -4508,12 +4536,12 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 pipelineCreationCacheControl VkStructureTypesType - void* pNext + void* pNext VkBool32 storageBuffer16BitAccess16-bit integer/floating-point variables supported in BufferBlock VkBool32 uniformAndStorageBuffer16BitAccess16-bit integer/floating-point variables supported in BufferBlock and Block VkBool32 storagePushConstant1616-bit integer/floating-point variables supported in PushConstant @@ -4529,7 +4557,7 @@ typedef void CAMetalLayer; VkStructureTypesType - void* pNext + void* pNext uint8_t deviceUUID[VK_UUID_SIZE] uint8_t driverUUID[VK_UUID_SIZE] uint8_t deviceLUID[VK_LUID_SIZE] @@ -4548,7 +4576,7 @@ typedef void CAMetalLayer; VkStructureTypesType - void* pNext + void* pNext VkBool32 samplerMirrorClampToEdge VkBool32 drawIndirectCount VkBool32 storageBuffer8BitAccess8-bit integer variables supported in StorageBuffer @@ -4599,7 +4627,7 @@ typedef void CAMetalLayer; VkStructureTypesType - void* pNext + void* pNext VkDriverId driverID char driverName[VK_MAX_DRIVER_NAME_SIZE] char driverInfo[VK_MAX_DRIVER_INFO_SIZE] @@ -4655,17 +4683,17 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkPipelineCompilerControlFlagsAMD compilerControlFlags VkStructureType sType - void* pNext + void* pNext VkBool32 deviceCoherentMemory VkStructureType sType - void* pNext + void* pNext char name[VK_MAX_EXTENSION_NAME_SIZE] char version[VK_MAX_EXTENSION_NAME_SIZE] VkToolPurposeFlagsEXT purposes @@ -4674,18 +4702,18 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkClearColorValue customBorderColor VkFormat format VkStructureType sType - void* pNext + void* pNext uint32_t maxCustomBorderColorSamplers VkStructureType sType - void* pNext + void* pNext VkBool32 customBorderColors VkBool32 customBorderColorWithoutFormat @@ -4699,23 +4727,24 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkFormat vertexFormat VkDeviceOrHostAddressConstKHR vertexData VkDeviceSize vertexStride + uint32_t maxVertex VkIndexType indexType VkDeviceOrHostAddressConstKHR indexData VkDeviceOrHostAddressConstKHR transformData VkStructureType sType - const void* pNext + const void* pNext VkDeviceOrHostAddressConstKHR data VkDeviceSize stride VkStructureType sType - const void* pNext + const void* pNext VkBool32 arrayOfPointers VkDeviceOrHostAddressConstKHR data @@ -4726,48 +4755,38 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkGeometryTypeKHR geometryType VkAccelerationStructureGeometryDataKHR geometry VkGeometryFlagsKHR flags VkStructureType sType - const void* pNext + const void* pNext VkAccelerationStructureTypeKHR type VkBuildAccelerationStructureFlagsKHR flags - VkBool32 update + VkBuildAccelerationStructureModeKHR mode VkAccelerationStructureKHR srcAccelerationStructure - VkAccelerationStructureKHR dstAccelerationStructure - VkBool32 geometryArrayOfPointers + VkAccelerationStructureKHR dstAccelerationStructure uint32_t geometryCount - const VkAccelerationStructureGeometryKHR* const* ppGeometries + const VkAccelerationStructureGeometryKHR* pGeometries + const VkAccelerationStructureGeometryKHR* const* ppGeometries VkDeviceOrHostAddressKHR scratchData - + uint32_t primitiveCount uint32_t primitiveOffset uint32_t firstVertex uint32_t transformOffset - - VkStructureType sType - const void* pNext - VkGeometryTypeKHR geometryType - uint32_t maxPrimitiveCount - VkIndexType indexType - uint32_t maxVertexCount - VkFormat vertexFormat - VkBool32 allowsTransforms - VkStructureType sType - const void* pNext - VkDeviceSize compactedSize + const void* pNext + VkAccelerationStructureCreateFlagsKHR createFlags + VkBuffer buffer + VkDeviceSize offsetSpecified in bytes + VkDeviceSize size VkAccelerationStructureTypeKHR type - VkBuildAccelerationStructureFlagsKHR flags - uint32_t maxGeometryCount - const VkAccelerationStructureCreateGeometryTypeInfoKHR* pGeometryInfos VkDeviceAddress deviceAddress @@ -4795,100 +4814,99 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkAccelerationStructureKHR accelerationStructure - - VkStructureType sType - const void* pNext - const uint8_t* versionData + + VkStructureType sType + const void* pNext + const uint8_t* pVersionData VkStructureType sType - const void* pNext + const void* pNext VkAccelerationStructureKHR src VkAccelerationStructureKHR dst VkCopyAccelerationStructureModeKHR mode VkStructureType sType - const void* pNext + const void* pNext VkAccelerationStructureKHR src VkDeviceOrHostAddressKHR dst VkCopyAccelerationStructureModeKHR mode VkStructureType sType - const void* pNext + const void* pNext VkDeviceOrHostAddressConstKHR src VkAccelerationStructureKHR dst VkCopyAccelerationStructureModeKHR mode VkStructureType sType - const void* pNext - uint32_t maxPayloadSize - uint32_t maxAttributeSize - uint32_t maxCallableSize - - - VkStructureType sType - const void* pNext - VkDeferredOperationKHR operationHandle + const void* pNext + uint32_t maxPipelineRayPayloadSize + uint32_t maxPipelineRayHitAttributeSize VkStructureType sType - const void* pNext + const void* pNext uint32_t libraryCount const VkPipeline* pLibraries VkStructureType sType - void* pNext + void* pNext VkBool32 extendedDynamicState VkStructureType sType - void* pNextPointer to next structure + void* pNextPointer to next structure + VkSurfaceTransformFlagBitsKHR transform + + + VkStructureType sType + const void* pNext VkSurfaceTransformFlagBitsKHR transform VkStructureType sType - void* pNextPointer to next structure + void* pNextPointer to next structure VkSurfaceTransformFlagBitsKHR transform VkRect2D renderArea VkStructureTypesType - void* pNext + void* pNext VkBool32 diagnosticsConfig VkStructureType sType - const void* pNext + const void* pNext VkDeviceDiagnosticsConfigFlagsNV flags VkStructureType sType - void* pNext + void* pNext VkBool32 robustBufferAccess2 VkBool32 robustImageAccess2 VkBool32 nullDescriptor VkStructureType sType - void* pNext + void* pNext VkDeviceSize robustStorageBufferAccessSizeAlignment VkDeviceSize robustUniformBufferAccessSizeAlignment VkStructureType sType - void* pNext + void* pNext VkBool32 robustImageAccess VkStructureType sType - void* pNext + void* pNext VkBool32 constantAlphaColorBlendFactors VkBool32 events VkBool32 imageViewFormatReinterpretation @@ -4903,29 +4921,29 @@ typedef void CAMetalLayer; VkBool32 tessellationIsolines VkBool32 tessellationPointMode VkBool32 triangleFans - VkBool32 vertexAttributeAccessBeyondStride + VkBool32 vertexAttributeAccessBeyondStride VkStructureType sType - void* pNext + void* pNext uint32_t minVertexInputBindingStrideAlignment - + VkStructureType sType - void* pNext + void* pNext VkBool32 formatA4R4G4B4 VkBool32 formatA4B4G4R4 VkStructureType sType - const void* pNext + const void* pNext VkDeviceSize srcOffsetSpecified in bytes VkDeviceSize dstOffsetSpecified in bytes VkDeviceSize sizeSpecified in bytes VkStructureType sType - const void* pNext + const void* pNext VkImageSubresourceLayers srcSubresource VkOffset3D srcOffsetSpecified in pixels for both compressed and uncompressed images VkImageSubresourceLayers dstSubresource @@ -4934,7 +4952,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImageSubresourceLayers srcSubresource VkOffset3D srcOffsets[2]Specified in pixels for both compressed and uncompressed images VkImageSubresourceLayers dstSubresource @@ -4942,7 +4960,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkDeviceSize bufferOffsetSpecified in bytes uint32_t bufferRowLengthSpecified in texels uint32_t bufferImageHeight @@ -4952,7 +4970,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImageSubresourceLayers srcSubresource VkOffset3D srcOffset VkImageSubresourceLayers dstSubresource @@ -4961,7 +4979,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBuffer srcBuffer VkBuffer dstBuffer uint32_t regionCount @@ -4969,7 +4987,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImage srcImage VkImageLayout srcImageLayout VkImage dstImage @@ -4979,7 +4997,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImage srcImage VkImageLayout srcImageLayout VkImage dstImage @@ -4990,7 +5008,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkBuffer srcBuffer VkImage dstImage VkImageLayout dstImageLayout @@ -4999,7 +5017,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImage srcImage VkImageLayout srcImageLayout VkBuffer dstBuffer @@ -5008,7 +5026,7 @@ typedef void CAMetalLayer; VkStructureType sType - const void* pNext + const void* pNext VkImage srcImage VkImageLayout srcImageLayout VkImage dstImage @@ -5018,32 +5036,32 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkBool32 shaderImageInt64Atomics VkBool32 sparseImageInt64Atomics VkStructureType sType - const void* pNext + const void* pNext const VkAttachmentReference2* pFragmentShadingRateAttachment VkExtent2D shadingRateAttachmentTexelSize VkStructureType sType - const void* pNext + const void* pNext VkExtent2D fragmentSize VkFragmentShadingRateCombinerOpKHR combinerOps[2] VkStructureType sType - void* pNext + void* pNext VkBool32 pipelineFragmentShadingRate VkBool32 primitiveFragmentShadingRate VkBool32 attachmentFragmentShadingRate VkStructureType sType - void* pNext + void* pNext VkExtent2D minFragmentShadingRateAttachmentTexelSize VkExtent2D maxFragmentShadingRateAttachmentTexelSize uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio @@ -5064,15 +5082,41 @@ typedef void CAMetalLayer; VkStructureType sType - void* pNext + void* pNext VkSampleCountFlags sampleCounts VkExtent2D fragmentSize VkStructureTypesType - void* pNext + void* pNext VkBool32 shaderTerminateInvocation + + VkStructureType sType + void* pNext + VkBool32 fragmentShadingRateEnums + VkBool32 supersampleFragmentShadingRates + VkBool32 noInvocationFragmentShadingRates + + + VkStructureType sType + void* pNext + VkSampleCountFlagBits maxFragmentShadingRateInvocationCount + + + VkStructureType sType + const void* pNext + VkFragmentShadingRateTypeNV shadingRateType + VkFragmentShadingRateNV shadingRate + VkFragmentShadingRateCombinerOpKHR combinerOps[2] + + + VkStructureType sType + const void* pNext + VkDeviceSize accelerationStructureSize + VkDeviceSize updateScratchSize + VkDeviceSize buildScratchSize + Vulkan enumerant (token) definitions @@ -5754,8 +5798,7 @@ typedef void CAMetalLayer; - - + When VkSemaphoreCreateFlagBits is first extended, need to add a bitmask enums tag for it here @@ -6078,7 +6121,8 @@ typedef void CAMetalLayer; - + + @@ -6280,24 +6324,33 @@ typedef void CAMetalLayer; + + + + + + + + + - - - - + + + + @@ -6309,6 +6362,16 @@ typedef void CAMetalLayer; + + + + + + + + + + @@ -6381,8 +6444,10 @@ typedef void CAMetalLayer; - - + + + + @@ -6444,6 +6509,24 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + + @@ -8582,12 +8665,11 @@ typedef void CAMetalLayer; VkAccelerationStructureKHR accelerationStructure const VkAllocationCallbacks* pAllocator - - void vkGetAccelerationStructureMemoryRequirementsKHR + void vkDestroyAccelerationStructureNV VkDevice device - const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo - VkMemoryRequirements2* pMemoryRequirements + VkAccelerationStructureNV accelerationStructure + const VkAllocationCallbacks* pAllocator void vkGetAccelerationStructureMemoryRequirementsNV @@ -8596,17 +8678,16 @@ typedef void CAMetalLayer; VkMemoryRequirements2KHR* pMemoryRequirements - VkResult vkBindAccelerationStructureMemoryKHR + VkResult vkBindAccelerationStructureMemoryNV VkDevice device uint32_t bindInfoCount - const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos + const VkBindAccelerationStructureMemoryInfoNV* pBindInfos - void vkCmdCopyAccelerationStructureNV VkCommandBuffer commandBuffer - VkAccelerationStructureKHR dst - VkAccelerationStructureKHR src + VkAccelerationStructureNV dst + VkAccelerationStructureNV src VkCopyAccelerationStructureModeKHR mode @@ -8617,6 +8698,7 @@ typedef void CAMetalLayer; VkResult vkCopyAccelerationStructureKHR VkDevice device + VkDeferredOperationKHR deferredOperation const VkCopyAccelerationStructureInfoKHR* pInfo @@ -8627,6 +8709,7 @@ typedef void CAMetalLayer; VkResult vkCopyAccelerationStructureToMemoryKHR VkDevice device + VkDeferredOperationKHR deferredOperation const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo @@ -8637,6 +8720,7 @@ typedef void CAMetalLayer; VkResult vkCopyMemoryToAccelerationStructureKHR VkDevice device + VkDeferredOperationKHR deferredOperation const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo @@ -8648,7 +8732,15 @@ typedef void CAMetalLayer; VkQueryPool queryPool uint32_t firstQuery - + + void vkCmdWriteAccelerationStructuresPropertiesNV + VkCommandBuffer commandBuffer + uint32_t accelerationStructureCount + const VkAccelerationStructureNV* pAccelerationStructures + VkQueryType queryType + VkQueryPool queryPool + uint32_t firstQuery + void vkCmdBuildAccelerationStructureNV VkCommandBuffer commandBuffer @@ -8656,8 +8748,8 @@ typedef void CAMetalLayer; VkBuffer instanceData VkDeviceSize instanceOffset VkBool32 update - VkAccelerationStructureKHR dst - VkAccelerationStructureKHR src + VkAccelerationStructureNV dst + VkAccelerationStructureNV src VkBuffer scratch VkDeviceSize scratchOffset @@ -8674,10 +8766,10 @@ typedef void CAMetalLayer; void vkCmdTraceRaysKHR VkCommandBuffer commandBuffer - const VkStridedBufferRegionKHR* pRaygenShaderBindingTable - const VkStridedBufferRegionKHR* pMissShaderBindingTable - const VkStridedBufferRegionKHR* pHitShaderBindingTable - const VkStridedBufferRegionKHR* pCallableShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable uint32_t width uint32_t height uint32_t depth @@ -8722,7 +8814,7 @@ typedef void CAMetalLayer; VkResult vkGetAccelerationStructureHandleNV VkDevice device - VkAccelerationStructureKHR accelerationStructure + VkAccelerationStructureNV accelerationStructure size_t dataSize void* pData @@ -8738,6 +8830,7 @@ typedef void CAMetalLayer; VkResult vkCreateRayTracingPipelinesKHR VkDevice device + VkDeferredOperationKHR deferredOperation VkPipelineCache pipelineCache uint32_t createInfoCount const VkRayTracingPipelineCreateInfoKHR* pCreateInfos @@ -8753,17 +8846,29 @@ typedef void CAMetalLayer; void vkCmdTraceRaysIndirectKHR VkCommandBuffer commandBuffer - const VkStridedBufferRegionKHR* pRaygenShaderBindingTable - const VkStridedBufferRegionKHR* pMissShaderBindingTable - const VkStridedBufferRegionKHR* pHitShaderBindingTable - const VkStridedBufferRegionKHR* pCallableShaderBindingTable - VkBuffer buffer - VkDeviceSize offset + const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable + const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable + VkDeviceAddress indirectDeviceAddress - - VkResult vkGetDeviceAccelerationStructureCompatibilityKHR + + void vkGetDeviceAccelerationStructureCompatibilityKHR VkDevice device - const VkAccelerationStructureVersionKHR* version + const VkAccelerationStructureVersionInfoKHR* pVersionInfo + VkAccelerationStructureCompatibilityKHR* pCompatibility + + + VkDeviceSize vkGetRayTracingShaderGroupStackSizeKHR + VkDevice device + VkPipeline pipeline + uint32_t group + VkShaderGroupShaderKHR groupShader + + + void vkCmdSetRayTracingPipelineStackSizeKHR + VkCommandBuffer commandBuffer + uint32_t pipelineStackSize uint32_t vkGetImageViewHandleNVX @@ -8947,26 +9052,28 @@ typedef void CAMetalLayer; VkAccelerationStructureKHR* pAccelerationStructure - void vkCmdBuildAccelerationStructureKHR + void vkCmdBuildAccelerationStructuresKHR VkCommandBuffer commandBuffer uint32_t infoCount const VkAccelerationStructureBuildGeometryInfoKHR* pInfos - const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos + const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos - void vkCmdBuildAccelerationStructureIndirectKHR + void vkCmdBuildAccelerationStructuresIndirectKHR VkCommandBuffer commandBuffer - const VkAccelerationStructureBuildGeometryInfoKHR* pInfo - VkBuffer indirectBuffer - VkDeviceSize indirectOffset - uint32_t indirectStride + uint32_t infoCount + const VkAccelerationStructureBuildGeometryInfoKHR* pInfos + const VkDeviceAddress* pIndirectDeviceAddresses + const uint32_t* pIndirectStrides + const uint32_t* const* ppMaxPrimitiveCounts - VkResult vkBuildAccelerationStructureKHR + VkResult vkBuildAccelerationStructuresKHR VkDevice device + VkDeferredOperationKHR deferredOperation uint32_t infoCount const VkAccelerationStructureBuildGeometryInfoKHR* pInfos - const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos + const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos VkDeviceAddress vkGetAccelerationStructureDeviceAddressKHR @@ -9142,6 +9249,20 @@ typedef void CAMetalLayer; uint32_t* pFragmentShadingRateCount VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates + + void vkCmdSetFragmentShadingRateEnumNV + VkCommandBuffer commandBuffer + VkFragmentShadingRateNV shadingRate + const VkFragmentShadingRateCombinerOpKHR combinerOps[2] + + + void vkGetAccelerationStructureBuildSizesKHR + VkDevice device + VkAccelerationStructureBuildTypeKHR buildType + const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo + const uint32_t* pMaxPrimitiveCounts + VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo + @@ -12011,65 +12132,41 @@ typedef void CAMetalLayer; - + - - - - - + + + - - - + - - - - + + - - - - - - - - + - - - + - - - - + + + + - - - - - - - - + + - - - - + @@ -12084,34 +12181,30 @@ typedef void CAMetalLayer; - - - - - - + + - - - + - + + + + + - - - - - + + + @@ -12119,14 +12212,63 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + @@ -12397,8 +12539,8 @@ typedef void CAMetalLayer; - - + + @@ -12411,15 +12553,15 @@ typedef void CAMetalLayer; - + - + - + - - + + @@ -12469,9 +12611,6 @@ typedef void CAMetalLayer; - - - @@ -12500,9 +12639,6 @@ typedef void CAMetalLayer; - - - @@ -13535,14 +13671,12 @@ typedef void CAMetalLayer; - + - + - - @@ -13804,7 +13938,7 @@ typedef void CAMetalLayer; - + @@ -14059,19 +14193,28 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + - + - + @@ -14106,10 +14249,12 @@ typedef void CAMetalLayer; - + - - + + + + @@ -14229,18 +14374,6 @@ typedef void CAMetalLayer; - - - - - - - - - - - - @@ -14320,5 +14453,612 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +