| #ifndef VULKAN_BETA_H_ | |
| #define VULKAN_BETA_H_ 1 | |
| /* | |
| ** Copyright (c) 2015-2020 The Khronos Group Inc. | |
| ** | |
| ** SPDX-License-Identifier: Apache-2.0 | |
| */ | |
| /* | |
| ** This header is generated from the Khronos Vulkan XML API Registry. | |
| ** | |
| */ | |
| #ifdef __cplusplus | |
| extern "C" { | |
| #endif | |
| #define VK_KHR_portability_subset 1 | |
| #define VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION 1 | |
| #define VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME "VK_KHR_portability_subset" | |
| typedef struct VkPhysicalDevicePortabilitySubsetFeaturesKHR { | |
| VkStructureType sType; | |
| void* pNext; | |
| VkBool32 constantAlphaColorBlendFactors; | |
| VkBool32 events; | |
| VkBool32 imageViewFormatReinterpretation; | |
| VkBool32 imageViewFormatSwizzle; | |
| VkBool32 imageView2DOn3DImage; | |
| VkBool32 multisampleArrayImage; | |
| VkBool32 mutableComparisonSamplers; | |
| VkBool32 pointPolygons; | |
| VkBool32 samplerMipLodBias; | |
| VkBool32 separateStencilMaskRef; | |
| VkBool32 shaderSampleRateInterpolationFunctions; | |
| VkBool32 tessellationIsolines; | |
| VkBool32 tessellationPointMode; | |
| VkBool32 triangleFans; | |
| VkBool32 vertexAttributeAccessBeyondStride; | |
| } VkPhysicalDevicePortabilitySubsetFeaturesKHR; | |
| typedef struct VkPhysicalDevicePortabilitySubsetPropertiesKHR { | |
| VkStructureType sType; | |
| void* pNext; | |
| uint32_t minVertexInputBindingStrideAlignment; | |
| } 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 | |
| #endif |