winevulkan: Update to VK spec version 1.2.162.

Signed-off-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
Signed-off-by: Daniel Koch <dkoch@nvidia.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Liam Middlebrook 2020-11-23 05:56:49 -08:00 committed by Alexandre Julliard
parent b84d11d18e
commit 7d8c50e437
5 changed files with 2408 additions and 1191 deletions

View File

@ -64,7 +64,7 @@ from enum import Enum
LOGGER = logging.Logger("vulkan")
LOGGER.addHandler(logging.StreamHandler())
VK_XML_VERSION = "1.2.160"
VK_XML_VERSION = "1.2.162"
WINE_VK_VERSION = (1, 2)
# Filenames to create.

View File

@ -106,9 +106,9 @@ static inline void free_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo_host *
free_VkCommandBufferInheritanceInfo_array((VkCommandBufferInheritanceInfo_host *)in->pInheritanceInfo, 1);
}
static inline VkBindAccelerationStructureMemoryInfoKHR_host *convert_VkBindAccelerationStructureMemoryInfoKHR_array_win_to_host(const VkBindAccelerationStructureMemoryInfoKHR *in, uint32_t count)
static inline VkBindAccelerationStructureMemoryInfoNV_host *convert_VkBindAccelerationStructureMemoryInfoNV_array_win_to_host(const VkBindAccelerationStructureMemoryInfoNV *in, uint32_t count)
{
VkBindAccelerationStructureMemoryInfoKHR_host *out;
VkBindAccelerationStructureMemoryInfoNV_host *out;
unsigned int i;
if (!in) return NULL;
@ -128,7 +128,7 @@ static inline VkBindAccelerationStructureMemoryInfoKHR_host *convert_VkBindAccel
return out;
}
static inline void free_VkBindAccelerationStructureMemoryInfoKHR_array(VkBindAccelerationStructureMemoryInfoKHR_host *in, uint32_t count)
static inline void free_VkBindAccelerationStructureMemoryInfoNV_array(VkBindAccelerationStructureMemoryInfoNV_host *in, uint32_t count)
{
if (!in) return;
@ -189,6 +189,39 @@ static inline void free_VkBindImageMemoryInfo_array(VkBindImageMemoryInfo_host *
heap_free(in);
}
static inline VkAccelerationStructureBuildGeometryInfoKHR_host *convert_VkAccelerationStructureBuildGeometryInfoKHR_array_win_to_host(const VkAccelerationStructureBuildGeometryInfoKHR *in, uint32_t count)
{
VkAccelerationStructureBuildGeometryInfoKHR_host *out;
unsigned int i;
if (!in) return NULL;
out = heap_alloc(count * sizeof(*out));
for (i = 0; i < count; i++)
{
out[i].sType = in[i].sType;
out[i].pNext = in[i].pNext;
out[i].type = in[i].type;
out[i].flags = in[i].flags;
out[i].mode = in[i].mode;
out[i].srcAccelerationStructure = in[i].srcAccelerationStructure;
out[i].dstAccelerationStructure = in[i].dstAccelerationStructure;
out[i].geometryCount = in[i].geometryCount;
out[i].pGeometries = in[i].pGeometries;
out[i].ppGeometries = in[i].ppGeometries;
out[i].scratchData = in[i].scratchData;
}
return out;
}
static inline void free_VkAccelerationStructureBuildGeometryInfoKHR_array(VkAccelerationStructureBuildGeometryInfoKHR_host *in, uint32_t count)
{
if (!in) return;
heap_free(in);
}
static inline void convert_VkConditionalRenderingBeginInfoEXT_win_to_host(const VkConditionalRenderingBeginInfoEXT *in, VkConditionalRenderingBeginInfoEXT_host *out)
{
if (!in) return;
@ -312,6 +345,28 @@ static inline void free_VkAccelerationStructureInfoNV(VkAccelerationStructureInf
free_VkGeometryNV_array((VkGeometryNV_host *)in->pGeometries, in->geometryCount);
}
static inline void convert_VkCopyAccelerationStructureInfoKHR_win_to_host(const VkCopyAccelerationStructureInfoKHR *in, VkCopyAccelerationStructureInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->src = in->src;
out->dst = in->dst;
out->mode = in->mode;
}
static inline void convert_VkCopyAccelerationStructureToMemoryInfoKHR_win_to_host(const VkCopyAccelerationStructureToMemoryInfoKHR *in, VkCopyAccelerationStructureToMemoryInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->src = in->src;
out->dst = in->dst;
out->mode = in->mode;
}
static inline VkBufferCopy_host *convert_VkBufferCopy_array_win_to_host(const VkBufferCopy *in, uint32_t count)
{
VkBufferCopy_host *out;
@ -489,6 +544,17 @@ static inline void free_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR_
free_VkBufferImageCopy2KHR_array((VkBufferImageCopy2KHR_host *)in->pRegions, in->regionCount);
}
static inline void convert_VkCopyMemoryToAccelerationStructureInfoKHR_win_to_host(const VkCopyMemoryToAccelerationStructureInfoKHR *in, VkCopyMemoryToAccelerationStructureInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->src = in->src;
out->dst = in->dst;
out->mode = in->mode;
}
static inline VkIndirectCommandsStreamNV_host *convert_VkIndirectCommandsStreamNV_array_win_to_host(const VkIndirectCommandsStreamNV *in, uint32_t count)
{
VkIndirectCommandsStreamNV_host *out;
@ -725,6 +791,29 @@ static inline void convert_VkPerformanceOverrideInfoINTEL_win_to_host(const VkPe
out->parameter = in->parameter;
}
static inline void convert_VkStridedDeviceAddressRegionKHR_win_to_host(const VkStridedDeviceAddressRegionKHR *in, VkStridedDeviceAddressRegionKHR_host *out)
{
if (!in) return;
out->deviceAddress = in->deviceAddress;
out->stride = in->stride;
out->size = in->size;
}
static inline void convert_VkAccelerationStructureCreateInfoKHR_win_to_host(const VkAccelerationStructureCreateInfoKHR *in, VkAccelerationStructureCreateInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->createFlags = in->createFlags;
out->buffer = in->buffer;
out->offset = in->offset;
out->size = in->size;
out->type = in->type;
out->deviceAddress = in->deviceAddress;
}
static inline void convert_VkAccelerationStructureCreateInfoNV_win_to_host(const VkAccelerationStructureCreateInfoNV *in, VkAccelerationStructureCreateInfoNV_host *out)
{
if (!in) return;
@ -981,6 +1070,48 @@ static inline void free_VkIndirectCommandsLayoutCreateInfoNV(VkIndirectCommandsL
free_VkIndirectCommandsLayoutTokenNV_array((VkIndirectCommandsLayoutTokenNV_host *)in->pTokens, in->tokenCount);
}
static inline VkRayTracingPipelineCreateInfoKHR_host *convert_VkRayTracingPipelineCreateInfoKHR_array_win_to_host(const VkRayTracingPipelineCreateInfoKHR *in, uint32_t count)
{
VkRayTracingPipelineCreateInfoKHR_host *out;
unsigned int i;
if (!in) return NULL;
out = heap_alloc(count * sizeof(*out));
for (i = 0; i < count; i++)
{
out[i].sType = in[i].sType;
out[i].pNext = in[i].pNext;
out[i].flags = in[i].flags;
out[i].stageCount = in[i].stageCount;
out[i].pStages = convert_VkPipelineShaderStageCreateInfo_array_win_to_host(in[i].pStages, in[i].stageCount);
out[i].groupCount = in[i].groupCount;
out[i].pGroups = in[i].pGroups;
out[i].maxPipelineRayRecursionDepth = in[i].maxPipelineRayRecursionDepth;
out[i].pLibraryInfo = in[i].pLibraryInfo;
out[i].pLibraryInterface = in[i].pLibraryInterface;
out[i].pDynamicState = in[i].pDynamicState;
out[i].layout = in[i].layout;
out[i].basePipelineHandle = in[i].basePipelineHandle;
out[i].basePipelineIndex = in[i].basePipelineIndex;
}
return out;
}
static inline void free_VkRayTracingPipelineCreateInfoKHR_array(VkRayTracingPipelineCreateInfoKHR_host *in, uint32_t count)
{
unsigned int i;
if (!in) return;
for (i = 0; i < count; i++)
{
free_VkPipelineShaderStageCreateInfo_array((VkPipelineShaderStageCreateInfo_host *)in[i].pStages, in[i].stageCount);
}
heap_free(in);
}
static inline VkRayTracingPipelineCreateInfoNV_host *convert_VkRayTracingPipelineCreateInfoNV_array_win_to_host(const VkRayTracingPipelineCreateInfoNV *in, uint32_t count)
{
VkRayTracingPipelineCreateInfoNV_host *out;
@ -1095,6 +1226,43 @@ static inline void free_VkMappedMemoryRange_array(VkMappedMemoryRange_host *in,
heap_free(in);
}
static inline void convert_VkAccelerationStructureBuildGeometryInfoKHR_win_to_host(const VkAccelerationStructureBuildGeometryInfoKHR *in, VkAccelerationStructureBuildGeometryInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->type = in->type;
out->flags = in->flags;
out->mode = in->mode;
out->srcAccelerationStructure = in->srcAccelerationStructure;
out->dstAccelerationStructure = in->dstAccelerationStructure;
out->geometryCount = in->geometryCount;
out->pGeometries = in->pGeometries;
out->ppGeometries = in->ppGeometries;
out->scratchData = in->scratchData;
}
static inline void convert_VkAccelerationStructureBuildSizesInfoKHR_win_to_host(const VkAccelerationStructureBuildSizesInfoKHR *in, VkAccelerationStructureBuildSizesInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->accelerationStructureSize = in->accelerationStructureSize;
out->updateScratchSize = in->updateScratchSize;
out->buildScratchSize = in->buildScratchSize;
}
static inline void convert_VkAccelerationStructureDeviceAddressInfoKHR_win_to_host(const VkAccelerationStructureDeviceAddressInfoKHR *in, VkAccelerationStructureDeviceAddressInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->accelerationStructure = in->accelerationStructure;
}
static inline void convert_VkAccelerationStructureMemoryRequirementsInfoNV_win_to_host(const VkAccelerationStructureMemoryRequirementsInfoNV *in, VkAccelerationStructureMemoryRequirementsInfoNV_host *out)
{
if (!in) return;
@ -2388,6 +2556,62 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR:
{
const VkPhysicalDeviceAccelerationStructureFeaturesKHR *in = (const VkPhysicalDeviceAccelerationStructureFeaturesKHR *)in_header;
VkPhysicalDeviceAccelerationStructureFeaturesKHR *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->accelerationStructure = in->accelerationStructure;
out->accelerationStructureCaptureReplay = in->accelerationStructureCaptureReplay;
out->accelerationStructureIndirectBuild = in->accelerationStructureIndirectBuild;
out->accelerationStructureHostCommands = in->accelerationStructureHostCommands;
out->descriptorBindingAccelerationStructureUpdateAfterBind = in->descriptorBindingAccelerationStructureUpdateAfterBind;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR:
{
const VkPhysicalDeviceRayTracingPipelineFeaturesKHR *in = (const VkPhysicalDeviceRayTracingPipelineFeaturesKHR *)in_header;
VkPhysicalDeviceRayTracingPipelineFeaturesKHR *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->rayTracingPipeline = in->rayTracingPipeline;
out->rayTracingPipelineShaderGroupHandleCaptureReplay = in->rayTracingPipelineShaderGroupHandleCaptureReplay;
out->rayTracingPipelineShaderGroupHandleCaptureReplayMixed = in->rayTracingPipelineShaderGroupHandleCaptureReplayMixed;
out->rayTracingPipelineTraceRaysIndirect = in->rayTracingPipelineTraceRaysIndirect;
out->rayTraversalPrimitiveCulling = in->rayTraversalPrimitiveCulling;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR:
{
const VkPhysicalDeviceRayQueryFeaturesKHR *in = (const VkPhysicalDeviceRayQueryFeaturesKHR *)in_header;
VkPhysicalDeviceRayQueryFeaturesKHR *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->rayQuery = in->rayQuery;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
const VkDeviceMemoryOverallocationCreateInfoAMD *in = (const VkDeviceMemoryOverallocationCreateInfoAMD *)in_header;
@ -3366,17 +3590,17 @@ VkResult WINAPI wine_vkBeginCommandBuffer(VkCommandBuffer commandBuffer, const V
#endif
}
static VkResult WINAPI wine_vkBindAccelerationStructureMemoryNV(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR *pBindInfos)
static VkResult WINAPI wine_vkBindAccelerationStructureMemoryNV(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV *pBindInfos)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkBindAccelerationStructureMemoryInfoKHR_host *pBindInfos_host;
VkBindAccelerationStructureMemoryInfoNV_host *pBindInfos_host;
TRACE("%p, %u, %p\n", device, bindInfoCount, pBindInfos);
pBindInfos_host = convert_VkBindAccelerationStructureMemoryInfoKHR_array_win_to_host(pBindInfos, bindInfoCount);
pBindInfos_host = convert_VkBindAccelerationStructureMemoryInfoNV_array_win_to_host(pBindInfos, bindInfoCount);
result = device->funcs.p_vkBindAccelerationStructureMemoryNV(device->device, bindInfoCount, pBindInfos_host);
free_VkBindAccelerationStructureMemoryInfoKHR_array(pBindInfos_host, bindInfoCount);
free_VkBindAccelerationStructureMemoryInfoNV_array(pBindInfos_host, bindInfoCount);
return result;
#else
TRACE("%p, %u, %p\n", device, bindInfoCount, pBindInfos);
@ -3468,6 +3692,24 @@ static VkResult WINAPI wine_vkBindImageMemory2KHR(VkDevice device, uint32_t bind
#endif
}
static VkResult WINAPI wine_vkBuildAccelerationStructuresKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR *pInfos, const VkAccelerationStructureBuildRangeInfoKHR * const*ppBuildRangeInfos)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkAccelerationStructureBuildGeometryInfoKHR_host *pInfos_host;
TRACE("%p, 0x%s, %u, %p, %p\n", device, wine_dbgstr_longlong(deferredOperation), infoCount, pInfos, ppBuildRangeInfos);
pInfos_host = convert_VkAccelerationStructureBuildGeometryInfoKHR_array_win_to_host(pInfos, infoCount);
result = device->funcs.p_vkBuildAccelerationStructuresKHR(device->device, deferredOperation, infoCount, pInfos_host, ppBuildRangeInfos);
free_VkAccelerationStructureBuildGeometryInfoKHR_array(pInfos_host, infoCount);
return result;
#else
TRACE("%p, 0x%s, %u, %p, %p\n", device, wine_dbgstr_longlong(deferredOperation), infoCount, pInfos, ppBuildRangeInfos);
return device->funcs.p_vkBuildAccelerationStructuresKHR(device->device, deferredOperation, infoCount, pInfos, ppBuildRangeInfos);
#endif
}
static void WINAPI wine_vkCmdBeginConditionalRenderingEXT(VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT *pConditionalRenderingBegin)
{
#if defined(USE_STRUCT_CONVERSION)
@ -3621,7 +3863,7 @@ static void WINAPI wine_vkCmdBlitImage2KHR(VkCommandBuffer commandBuffer, const
#endif
}
static void WINAPI wine_vkCmdBuildAccelerationStructureNV(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV *pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset)
static void WINAPI wine_vkCmdBuildAccelerationStructureNV(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV *pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset)
{
#if defined(USE_STRUCT_CONVERSION)
VkAccelerationStructureInfoNV_host pInfo_host;
@ -3637,6 +3879,38 @@ static void WINAPI wine_vkCmdBuildAccelerationStructureNV(VkCommandBuffer comman
#endif
}
static void WINAPI wine_vkCmdBuildAccelerationStructuresIndirectKHR(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR *pInfos, const VkDeviceAddress *pIndirectDeviceAddresses, const uint32_t *pIndirectStrides, const uint32_t * const*ppMaxPrimitiveCounts)
{
#if defined(USE_STRUCT_CONVERSION)
VkAccelerationStructureBuildGeometryInfoKHR_host *pInfos_host;
TRACE("%p, %u, %p, %p, %p, %p\n", commandBuffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts);
pInfos_host = convert_VkAccelerationStructureBuildGeometryInfoKHR_array_win_to_host(pInfos, infoCount);
commandBuffer->device->funcs.p_vkCmdBuildAccelerationStructuresIndirectKHR(commandBuffer->command_buffer, infoCount, pInfos_host, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts);
free_VkAccelerationStructureBuildGeometryInfoKHR_array(pInfos_host, infoCount);
#else
TRACE("%p, %u, %p, %p, %p, %p\n", commandBuffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts);
commandBuffer->device->funcs.p_vkCmdBuildAccelerationStructuresIndirectKHR(commandBuffer->command_buffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts);
#endif
}
static void WINAPI wine_vkCmdBuildAccelerationStructuresKHR(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR *pInfos, const VkAccelerationStructureBuildRangeInfoKHR * const*ppBuildRangeInfos)
{
#if defined(USE_STRUCT_CONVERSION)
VkAccelerationStructureBuildGeometryInfoKHR_host *pInfos_host;
TRACE("%p, %u, %p, %p\n", commandBuffer, infoCount, pInfos, ppBuildRangeInfos);
pInfos_host = convert_VkAccelerationStructureBuildGeometryInfoKHR_array_win_to_host(pInfos, infoCount);
commandBuffer->device->funcs.p_vkCmdBuildAccelerationStructuresKHR(commandBuffer->command_buffer, infoCount, pInfos_host, ppBuildRangeInfos);
free_VkAccelerationStructureBuildGeometryInfoKHR_array(pInfos_host, infoCount);
#else
TRACE("%p, %u, %p, %p\n", commandBuffer, infoCount, pInfos, ppBuildRangeInfos);
commandBuffer->device->funcs.p_vkCmdBuildAccelerationStructuresKHR(commandBuffer->command_buffer, infoCount, pInfos, ppBuildRangeInfos);
#endif
}
void WINAPI wine_vkCmdClearAttachments(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment *pAttachments, uint32_t rectCount, const VkClearRect *pRects)
{
TRACE("%p, %u, %p, %u, %p\n", commandBuffer, attachmentCount, pAttachments, rectCount, pRects);
@ -3655,12 +3929,42 @@ void WINAPI wine_vkCmdClearDepthStencilImage(VkCommandBuffer commandBuffer, VkIm
commandBuffer->device->funcs.p_vkCmdClearDepthStencilImage(commandBuffer->command_buffer, image, imageLayout, pDepthStencil, rangeCount, pRanges);
}
static void WINAPI wine_vkCmdCopyAccelerationStructureNV(VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode)
static void WINAPI wine_vkCmdCopyAccelerationStructureKHR(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkCopyAccelerationStructureInfoKHR_host pInfo_host;
TRACE("%p, %p\n", commandBuffer, pInfo);
convert_VkCopyAccelerationStructureInfoKHR_win_to_host(pInfo, &pInfo_host);
commandBuffer->device->funcs.p_vkCmdCopyAccelerationStructureKHR(commandBuffer->command_buffer, &pInfo_host);
#else
TRACE("%p, %p\n", commandBuffer, pInfo);
commandBuffer->device->funcs.p_vkCmdCopyAccelerationStructureKHR(commandBuffer->command_buffer, pInfo);
#endif
}
static void WINAPI wine_vkCmdCopyAccelerationStructureNV(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode)
{
TRACE("%p, 0x%s, 0x%s, %#x\n", commandBuffer, wine_dbgstr_longlong(dst), wine_dbgstr_longlong(src), mode);
commandBuffer->device->funcs.p_vkCmdCopyAccelerationStructureNV(commandBuffer->command_buffer, dst, src, mode);
}
static void WINAPI wine_vkCmdCopyAccelerationStructureToMemoryKHR(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkCopyAccelerationStructureToMemoryInfoKHR_host pInfo_host;
TRACE("%p, %p\n", commandBuffer, pInfo);
convert_VkCopyAccelerationStructureToMemoryInfoKHR_win_to_host(pInfo, &pInfo_host);
commandBuffer->device->funcs.p_vkCmdCopyAccelerationStructureToMemoryKHR(commandBuffer->command_buffer, &pInfo_host);
#else
TRACE("%p, %p\n", commandBuffer, pInfo);
commandBuffer->device->funcs.p_vkCmdCopyAccelerationStructureToMemoryKHR(commandBuffer->command_buffer, pInfo);
#endif
}
void WINAPI wine_vkCmdCopyBuffer(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy *pRegions)
{
#if defined(USE_STRUCT_CONVERSION)
@ -3778,6 +4082,21 @@ static void WINAPI wine_vkCmdCopyImageToBuffer2KHR(VkCommandBuffer commandBuffer
#endif
}
static void WINAPI wine_vkCmdCopyMemoryToAccelerationStructureKHR(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkCopyMemoryToAccelerationStructureInfoKHR_host pInfo_host;
TRACE("%p, %p\n", commandBuffer, pInfo);
convert_VkCopyMemoryToAccelerationStructureInfoKHR_win_to_host(pInfo, &pInfo_host);
commandBuffer->device->funcs.p_vkCmdCopyMemoryToAccelerationStructureKHR(commandBuffer->command_buffer, &pInfo_host);
#else
TRACE("%p, %p\n", commandBuffer, pInfo);
commandBuffer->device->funcs.p_vkCmdCopyMemoryToAccelerationStructureKHR(commandBuffer->command_buffer, pInfo);
#endif
}
void WINAPI wine_vkCmdCopyQueryPoolResults(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags)
{
TRACE("%p, 0x%s, %u, %u, 0x%s, 0x%s, 0x%s, %#x\n", commandBuffer, wine_dbgstr_longlong(queryPool), firstQuery, queryCount, wine_dbgstr_longlong(dstBuffer), wine_dbgstr_longlong(dstOffset), wine_dbgstr_longlong(stride), flags);
@ -4266,6 +4585,12 @@ static void WINAPI wine_vkCmdSetPrimitiveTopologyEXT(VkCommandBuffer commandBuff
commandBuffer->device->funcs.p_vkCmdSetPrimitiveTopologyEXT(commandBuffer->command_buffer, primitiveTopology);
}
static void WINAPI wine_vkCmdSetRayTracingPipelineStackSizeKHR(VkCommandBuffer commandBuffer, uint32_t pipelineStackSize)
{
TRACE("%p, %u\n", commandBuffer, pipelineStackSize);
commandBuffer->device->funcs.p_vkCmdSetRayTracingPipelineStackSizeKHR(commandBuffer->command_buffer, pipelineStackSize);
}
static void WINAPI wine_vkCmdSetSampleLocationsEXT(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT *pSampleLocationsInfo)
{
TRACE("%p, %p\n", commandBuffer, pSampleLocationsInfo);
@ -4338,6 +4663,48 @@ static void WINAPI wine_vkCmdSetViewportWithCountEXT(VkCommandBuffer commandBuff
commandBuffer->device->funcs.p_vkCmdSetViewportWithCountEXT(commandBuffer->command_buffer, viewportCount, pViewports);
}
static void WINAPI wine_vkCmdTraceRaysIndirectKHR(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR *pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR *pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR *pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR *pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress)
{
#if defined(USE_STRUCT_CONVERSION)
VkStridedDeviceAddressRegionKHR_host pRaygenShaderBindingTable_host;
VkStridedDeviceAddressRegionKHR_host pMissShaderBindingTable_host;
VkStridedDeviceAddressRegionKHR_host pHitShaderBindingTable_host;
VkStridedDeviceAddressRegionKHR_host pCallableShaderBindingTable_host;
TRACE("%p, %p, %p, %p, %p, 0x%s\n", commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, wine_dbgstr_longlong(indirectDeviceAddress));
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pRaygenShaderBindingTable, &pRaygenShaderBindingTable_host);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pMissShaderBindingTable, &pMissShaderBindingTable_host);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pHitShaderBindingTable, &pHitShaderBindingTable_host);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pCallableShaderBindingTable, &pCallableShaderBindingTable_host);
commandBuffer->device->funcs.p_vkCmdTraceRaysIndirectKHR(commandBuffer->command_buffer, &pRaygenShaderBindingTable_host, &pMissShaderBindingTable_host, &pHitShaderBindingTable_host, &pCallableShaderBindingTable_host, indirectDeviceAddress);
#else
TRACE("%p, %p, %p, %p, %p, 0x%s\n", commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, wine_dbgstr_longlong(indirectDeviceAddress));
commandBuffer->device->funcs.p_vkCmdTraceRaysIndirectKHR(commandBuffer->command_buffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, indirectDeviceAddress);
#endif
}
static void WINAPI wine_vkCmdTraceRaysKHR(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR *pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR *pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR *pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR *pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth)
{
#if defined(USE_STRUCT_CONVERSION)
VkStridedDeviceAddressRegionKHR_host pRaygenShaderBindingTable_host;
VkStridedDeviceAddressRegionKHR_host pMissShaderBindingTable_host;
VkStridedDeviceAddressRegionKHR_host pHitShaderBindingTable_host;
VkStridedDeviceAddressRegionKHR_host pCallableShaderBindingTable_host;
TRACE("%p, %p, %p, %p, %p, %u, %u, %u\n", commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pRaygenShaderBindingTable, &pRaygenShaderBindingTable_host);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pMissShaderBindingTable, &pMissShaderBindingTable_host);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pHitShaderBindingTable, &pHitShaderBindingTable_host);
convert_VkStridedDeviceAddressRegionKHR_win_to_host(pCallableShaderBindingTable, &pCallableShaderBindingTable_host);
commandBuffer->device->funcs.p_vkCmdTraceRaysKHR(commandBuffer->command_buffer, &pRaygenShaderBindingTable_host, &pMissShaderBindingTable_host, &pHitShaderBindingTable_host, &pCallableShaderBindingTable_host, width, height, depth);
#else
TRACE("%p, %p, %p, %p, %p, %u, %u, %u\n", commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth);
commandBuffer->device->funcs.p_vkCmdTraceRaysKHR(commandBuffer->command_buffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth);
#endif
}
static void WINAPI wine_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)
{
TRACE("%p, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, 0x%s, %u, %u, %u\n", commandBuffer, wine_dbgstr_longlong(raygenShaderBindingTableBuffer), wine_dbgstr_longlong(raygenShaderBindingOffset), wine_dbgstr_longlong(missShaderBindingTableBuffer), wine_dbgstr_longlong(missShaderBindingOffset), wine_dbgstr_longlong(missShaderBindingStride), wine_dbgstr_longlong(hitShaderBindingTableBuffer), wine_dbgstr_longlong(hitShaderBindingOffset), wine_dbgstr_longlong(hitShaderBindingStride), wine_dbgstr_longlong(callableShaderBindingTableBuffer), wine_dbgstr_longlong(callableShaderBindingOffset), wine_dbgstr_longlong(callableShaderBindingStride), width, height, depth);
@ -4369,7 +4736,13 @@ void WINAPI wine_vkCmdWaitEvents(VkCommandBuffer commandBuffer, uint32_t eventCo
#endif
}
static void WINAPI wine_vkCmdWriteAccelerationStructuresPropertiesNV(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR *pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery)
static void WINAPI wine_vkCmdWriteAccelerationStructuresPropertiesKHR(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR *pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery)
{
TRACE("%p, %u, %p, %#x, 0x%s, %u\n", commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, wine_dbgstr_longlong(queryPool), firstQuery);
commandBuffer->device->funcs.p_vkCmdWriteAccelerationStructuresPropertiesKHR(commandBuffer->command_buffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
}
static void WINAPI wine_vkCmdWriteAccelerationStructuresPropertiesNV(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV *pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery)
{
TRACE("%p, %u, %p, %#x, 0x%s, %u\n", commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, wine_dbgstr_longlong(queryPool), firstQuery);
commandBuffer->device->funcs.p_vkCmdWriteAccelerationStructuresPropertiesNV(commandBuffer->command_buffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
@ -4393,6 +4766,74 @@ static VkResult WINAPI wine_vkCompileDeferredNV(VkDevice device, VkPipeline pipe
return device->funcs.p_vkCompileDeferredNV(device->device, pipeline, shader);
}
static VkResult WINAPI wine_vkCopyAccelerationStructureKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkCopyAccelerationStructureInfoKHR_host pInfo_host;
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(deferredOperation), pInfo);
convert_VkCopyAccelerationStructureInfoKHR_win_to_host(pInfo, &pInfo_host);
result = device->funcs.p_vkCopyAccelerationStructureKHR(device->device, deferredOperation, &pInfo_host);
return result;
#else
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(deferredOperation), pInfo);
return device->funcs.p_vkCopyAccelerationStructureKHR(device->device, deferredOperation, pInfo);
#endif
}
static VkResult WINAPI wine_vkCopyAccelerationStructureToMemoryKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureToMemoryInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkCopyAccelerationStructureToMemoryInfoKHR_host pInfo_host;
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(deferredOperation), pInfo);
convert_VkCopyAccelerationStructureToMemoryInfoKHR_win_to_host(pInfo, &pInfo_host);
result = device->funcs.p_vkCopyAccelerationStructureToMemoryKHR(device->device, deferredOperation, &pInfo_host);
return result;
#else
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(deferredOperation), pInfo);
return device->funcs.p_vkCopyAccelerationStructureToMemoryKHR(device->device, deferredOperation, pInfo);
#endif
}
static VkResult WINAPI wine_vkCopyMemoryToAccelerationStructureKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToAccelerationStructureInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkCopyMemoryToAccelerationStructureInfoKHR_host pInfo_host;
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(deferredOperation), pInfo);
convert_VkCopyMemoryToAccelerationStructureInfoKHR_win_to_host(pInfo, &pInfo_host);
result = device->funcs.p_vkCopyMemoryToAccelerationStructureKHR(device->device, deferredOperation, &pInfo_host);
return result;
#else
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(deferredOperation), pInfo);
return device->funcs.p_vkCopyMemoryToAccelerationStructureKHR(device->device, deferredOperation, pInfo);
#endif
}
static VkResult WINAPI wine_vkCreateAccelerationStructureKHR(VkDevice device, const VkAccelerationStructureCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkAccelerationStructureKHR *pAccelerationStructure)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkAccelerationStructureCreateInfoKHR_host pCreateInfo_host;
TRACE("%p, %p, %p, %p\n", device, pCreateInfo, pAllocator, pAccelerationStructure);
convert_VkAccelerationStructureCreateInfoKHR_win_to_host(pCreateInfo, &pCreateInfo_host);
result = device->funcs.p_vkCreateAccelerationStructureKHR(device->device, &pCreateInfo_host, NULL, pAccelerationStructure);
return result;
#else
TRACE("%p, %p, %p, %p\n", device, pCreateInfo, pAllocator, pAccelerationStructure);
return device->funcs.p_vkCreateAccelerationStructureKHR(device->device, pCreateInfo, NULL, pAccelerationStructure);
#endif
}
static VkResult WINAPI wine_vkCreateAccelerationStructureNV(VkDevice device, const VkAccelerationStructureCreateInfoNV *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkAccelerationStructureNV *pAccelerationStructure)
{
#if defined(USE_STRUCT_CONVERSION)
@ -4462,6 +4903,12 @@ VkResult WINAPI wine_vkCreateComputePipelines(VkDevice device, VkPipelineCache p
#endif
}
static VkResult WINAPI wine_vkCreateDeferredOperationKHR(VkDevice device, const VkAllocationCallbacks *pAllocator, VkDeferredOperationKHR *pDeferredOperation)
{
TRACE("%p, %p, %p\n", device, pAllocator, pDeferredOperation);
return device->funcs.p_vkCreateDeferredOperationKHR(device->device, NULL, pDeferredOperation);
}
VkResult WINAPI wine_vkCreateDescriptorPool(VkDevice device, const VkDescriptorPoolCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDescriptorPool *pDescriptorPool)
{
TRACE("%p, %p, %p, %p\n", device, pCreateInfo, pAllocator, pDescriptorPool);
@ -4626,6 +5073,24 @@ VkResult WINAPI wine_vkCreateQueryPool(VkDevice device, const VkQueryPoolCreateI
return device->funcs.p_vkCreateQueryPool(device->device, pCreateInfo, NULL, pQueryPool);
}
static VkResult WINAPI wine_vkCreateRayTracingPipelinesKHR(VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR *pCreateInfos, const VkAllocationCallbacks *pAllocator, VkPipeline *pPipelines)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkRayTracingPipelineCreateInfoKHR_host *pCreateInfos_host;
TRACE("%p, 0x%s, 0x%s, %u, %p, %p, %p\n", device, wine_dbgstr_longlong(deferredOperation), wine_dbgstr_longlong(pipelineCache), createInfoCount, pCreateInfos, pAllocator, pPipelines);
pCreateInfos_host = convert_VkRayTracingPipelineCreateInfoKHR_array_win_to_host(pCreateInfos, createInfoCount);
result = device->funcs.p_vkCreateRayTracingPipelinesKHR(device->device, deferredOperation, pipelineCache, createInfoCount, pCreateInfos_host, NULL, pPipelines);
free_VkRayTracingPipelineCreateInfoKHR_array(pCreateInfos_host, createInfoCount);
return result;
#else
TRACE("%p, 0x%s, 0x%s, %u, %p, %p, %p\n", device, wine_dbgstr_longlong(deferredOperation), wine_dbgstr_longlong(pipelineCache), createInfoCount, pCreateInfos, pAllocator, pPipelines);
return device->funcs.p_vkCreateRayTracingPipelinesKHR(device->device, deferredOperation, pipelineCache, createInfoCount, pCreateInfos, NULL, pPipelines);
#endif
}
static VkResult WINAPI wine_vkCreateRayTracingPipelinesNV(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV *pCreateInfos, const VkAllocationCallbacks *pAllocator, VkPipeline *pPipelines)
{
#if defined(USE_STRUCT_CONVERSION)
@ -4749,7 +5214,19 @@ VkResult thunk_vkDebugMarkerSetObjectTagEXT(VkDevice device, const VkDebugMarker
#endif
}
static void WINAPI wine_vkDestroyAccelerationStructureNV(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks *pAllocator)
static VkResult WINAPI wine_vkDeferredOperationJoinKHR(VkDevice device, VkDeferredOperationKHR operation)
{
TRACE("%p, 0x%s\n", device, wine_dbgstr_longlong(operation));
return device->funcs.p_vkDeferredOperationJoinKHR(device->device, operation);
}
static void WINAPI wine_vkDestroyAccelerationStructureKHR(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(accelerationStructure), pAllocator);
device->funcs.p_vkDestroyAccelerationStructureKHR(device->device, accelerationStructure, NULL);
}
static void WINAPI wine_vkDestroyAccelerationStructureNV(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(accelerationStructure), pAllocator);
device->funcs.p_vkDestroyAccelerationStructureNV(device->device, accelerationStructure, NULL);
@ -4767,6 +5244,12 @@ void WINAPI wine_vkDestroyBufferView(VkDevice device, VkBufferView bufferView, c
device->funcs.p_vkDestroyBufferView(device->device, bufferView, NULL);
}
static void WINAPI wine_vkDestroyDeferredOperationKHR(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(operation), pAllocator);
device->funcs.p_vkDestroyDeferredOperationKHR(device->device, operation, NULL);
}
void WINAPI wine_vkDestroyDescriptorPool(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(descriptorPool), pAllocator);
@ -4965,7 +5448,41 @@ void WINAPI wine_vkFreeMemory(VkDevice device, VkDeviceMemory memory, const VkAl
device->funcs.p_vkFreeMemory(device->device, memory, NULL);
}
static VkResult WINAPI wine_vkGetAccelerationStructureHandleNV(VkDevice device, VkAccelerationStructureKHR accelerationStructure, size_t dataSize, void *pData)
static void WINAPI wine_vkGetAccelerationStructureBuildSizesKHR(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkAccelerationStructureBuildGeometryInfoKHR *pBuildInfo, const uint32_t *pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR *pSizeInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkAccelerationStructureBuildGeometryInfoKHR_host pBuildInfo_host;
VkAccelerationStructureBuildSizesInfoKHR_host pSizeInfo_host;
TRACE("%p, %#x, %p, %p, %p\n", device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo);
convert_VkAccelerationStructureBuildGeometryInfoKHR_win_to_host(pBuildInfo, &pBuildInfo_host);
convert_VkAccelerationStructureBuildSizesInfoKHR_win_to_host(pSizeInfo, &pSizeInfo_host);
device->funcs.p_vkGetAccelerationStructureBuildSizesKHR(device->device, buildType, &pBuildInfo_host, pMaxPrimitiveCounts, &pSizeInfo_host);
#else
TRACE("%p, %#x, %p, %p, %p\n", device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo);
device->funcs.p_vkGetAccelerationStructureBuildSizesKHR(device->device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo);
#endif
}
static VkDeviceAddress WINAPI wine_vkGetAccelerationStructureDeviceAddressKHR(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR *pInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkDeviceAddress result;
VkAccelerationStructureDeviceAddressInfoKHR_host pInfo_host;
TRACE("%p, %p\n", device, pInfo);
convert_VkAccelerationStructureDeviceAddressInfoKHR_win_to_host(pInfo, &pInfo_host);
result = device->funcs.p_vkGetAccelerationStructureDeviceAddressKHR(device->device, &pInfo_host);
return result;
#else
TRACE("%p, %p\n", device, pInfo);
return device->funcs.p_vkGetAccelerationStructureDeviceAddressKHR(device->device, pInfo);
#endif
}
static VkResult WINAPI wine_vkGetAccelerationStructureHandleNV(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void *pData)
{
TRACE("%p, 0x%s, 0x%s, %p\n", device, wine_dbgstr_longlong(accelerationStructure), wine_dbgstr_longlong(dataSize), pData);
return device->funcs.p_vkGetAccelerationStructureHandleNV(device->device, accelerationStructure, dataSize, pData);
@ -5125,6 +5642,18 @@ static uint64_t WINAPI wine_vkGetBufferOpaqueCaptureAddressKHR(VkDevice device,
#endif
}
static uint32_t WINAPI wine_vkGetDeferredOperationMaxConcurrencyKHR(VkDevice device, VkDeferredOperationKHR operation)
{
TRACE("%p, 0x%s\n", device, wine_dbgstr_longlong(operation));
return device->funcs.p_vkGetDeferredOperationMaxConcurrencyKHR(device->device, operation);
}
static VkResult WINAPI wine_vkGetDeferredOperationResultKHR(VkDevice device, VkDeferredOperationKHR operation)
{
TRACE("%p, 0x%s\n", device, wine_dbgstr_longlong(operation));
return device->funcs.p_vkGetDeferredOperationResultKHR(device->device, operation);
}
void WINAPI wine_vkGetDescriptorSetLayoutSupport(VkDevice device, const VkDescriptorSetLayoutCreateInfo *pCreateInfo, VkDescriptorSetLayoutSupport *pSupport)
{
TRACE("%p, %p, %p\n", device, pCreateInfo, pSupport);
@ -5137,6 +5666,12 @@ static void WINAPI wine_vkGetDescriptorSetLayoutSupportKHR(VkDevice device, cons
device->funcs.p_vkGetDescriptorSetLayoutSupportKHR(device->device, pCreateInfo, pSupport);
}
static void WINAPI wine_vkGetDeviceAccelerationStructureCompatibilityKHR(VkDevice device, const VkAccelerationStructureVersionInfoKHR *pVersionInfo, VkAccelerationStructureCompatibilityKHR *pCompatibility)
{
TRACE("%p, %p, %p\n", device, pVersionInfo, pCompatibility);
device->funcs.p_vkGetDeviceAccelerationStructureCompatibilityKHR(device->device, pVersionInfo, pCompatibility);
}
void WINAPI wine_vkGetDeviceGroupPeerMemoryFeatures(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags *pPeerMemoryFeatures)
{
TRACE("%p, %u, %u, %u, %p\n", device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
@ -5723,12 +6258,30 @@ static void WINAPI wine_vkGetQueueCheckpointDataNV(VkQueue queue, uint32_t *pChe
queue->device->funcs.p_vkGetQueueCheckpointDataNV(queue->queue, pCheckpointDataCount, pCheckpointData);
}
static VkResult WINAPI wine_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void *pData)
{
TRACE("%p, 0x%s, %u, %u, 0x%s, %p\n", device, wine_dbgstr_longlong(pipeline), firstGroup, groupCount, wine_dbgstr_longlong(dataSize), pData);
return device->funcs.p_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(device->device, pipeline, firstGroup, groupCount, dataSize, pData);
}
static VkResult WINAPI wine_vkGetRayTracingShaderGroupHandlesKHR(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void *pData)
{
TRACE("%p, 0x%s, %u, %u, 0x%s, %p\n", device, wine_dbgstr_longlong(pipeline), firstGroup, groupCount, wine_dbgstr_longlong(dataSize), pData);
return device->funcs.p_vkGetRayTracingShaderGroupHandlesKHR(device->device, pipeline, firstGroup, groupCount, dataSize, pData);
}
static VkResult WINAPI wine_vkGetRayTracingShaderGroupHandlesNV(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void *pData)
{
TRACE("%p, 0x%s, %u, %u, 0x%s, %p\n", device, wine_dbgstr_longlong(pipeline), firstGroup, groupCount, wine_dbgstr_longlong(dataSize), pData);
return device->funcs.p_vkGetRayTracingShaderGroupHandlesNV(device->device, pipeline, firstGroup, groupCount, dataSize, pData);
}
static VkDeviceSize WINAPI wine_vkGetRayTracingShaderGroupStackSizeKHR(VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader)
{
TRACE("%p, 0x%s, %u, %#x\n", device, wine_dbgstr_longlong(pipeline), group, groupShader);
return device->funcs.p_vkGetRayTracingShaderGroupStackSizeKHR(device->device, pipeline, group, groupShader);
}
void WINAPI wine_vkGetRenderAreaGranularity(VkDevice device, VkRenderPass renderPass, VkExtent2D *pGranularity)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(renderPass), pGranularity);
@ -6069,6 +6622,12 @@ static VkResult WINAPI wine_vkWaitSemaphoresKHR(VkDevice device, const VkSemapho
return device->funcs.p_vkWaitSemaphoresKHR(device->device, pWaitInfo, timeout);
}
static VkResult WINAPI wine_vkWriteAccelerationStructuresPropertiesKHR(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR *pAccelerationStructures, VkQueryType queryType, size_t dataSize, void *pData, size_t stride)
{
TRACE("%p, %u, %p, %#x, 0x%s, %p, 0x%s\n", device, accelerationStructureCount, pAccelerationStructures, queryType, wine_dbgstr_longlong(dataSize), pData, wine_dbgstr_longlong(stride));
return device->funcs.p_vkWriteAccelerationStructuresPropertiesKHR(device->device, accelerationStructureCount, pAccelerationStructures, queryType, dataSize, pData, stride);
}
static const struct vulkan_func vk_device_dispatch_table[] =
{
{"vkAcquireNextImage2KHR", &wine_vkAcquireNextImage2KHR},
@ -6086,6 +6645,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkBindImageMemory", &wine_vkBindImageMemory},
{"vkBindImageMemory2", &wine_vkBindImageMemory2},
{"vkBindImageMemory2KHR", &wine_vkBindImageMemory2KHR},
{"vkBuildAccelerationStructuresKHR", &wine_vkBuildAccelerationStructuresKHR},
{"vkCmdBeginConditionalRenderingEXT", &wine_vkCmdBeginConditionalRenderingEXT},
{"vkCmdBeginDebugUtilsLabelEXT", &wine_vkCmdBeginDebugUtilsLabelEXT},
{"vkCmdBeginQuery", &wine_vkCmdBeginQuery},
@ -6105,10 +6665,14 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdBlitImage", &wine_vkCmdBlitImage},
{"vkCmdBlitImage2KHR", &wine_vkCmdBlitImage2KHR},
{"vkCmdBuildAccelerationStructureNV", &wine_vkCmdBuildAccelerationStructureNV},
{"vkCmdBuildAccelerationStructuresIndirectKHR", &wine_vkCmdBuildAccelerationStructuresIndirectKHR},
{"vkCmdBuildAccelerationStructuresKHR", &wine_vkCmdBuildAccelerationStructuresKHR},
{"vkCmdClearAttachments", &wine_vkCmdClearAttachments},
{"vkCmdClearColorImage", &wine_vkCmdClearColorImage},
{"vkCmdClearDepthStencilImage", &wine_vkCmdClearDepthStencilImage},
{"vkCmdCopyAccelerationStructureKHR", &wine_vkCmdCopyAccelerationStructureKHR},
{"vkCmdCopyAccelerationStructureNV", &wine_vkCmdCopyAccelerationStructureNV},
{"vkCmdCopyAccelerationStructureToMemoryKHR", &wine_vkCmdCopyAccelerationStructureToMemoryKHR},
{"vkCmdCopyBuffer", &wine_vkCmdCopyBuffer},
{"vkCmdCopyBuffer2KHR", &wine_vkCmdCopyBuffer2KHR},
{"vkCmdCopyBufferToImage", &wine_vkCmdCopyBufferToImage},
@ -6117,6 +6681,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdCopyImage2KHR", &wine_vkCmdCopyImage2KHR},
{"vkCmdCopyImageToBuffer", &wine_vkCmdCopyImageToBuffer},
{"vkCmdCopyImageToBuffer2KHR", &wine_vkCmdCopyImageToBuffer2KHR},
{"vkCmdCopyMemoryToAccelerationStructureKHR", &wine_vkCmdCopyMemoryToAccelerationStructureKHR},
{"vkCmdCopyQueryPoolResults", &wine_vkCmdCopyQueryPoolResults},
{"vkCmdDebugMarkerBeginEXT", &wine_vkCmdDebugMarkerBeginEXT},
{"vkCmdDebugMarkerEndEXT", &wine_vkCmdDebugMarkerEndEXT},
@ -6187,6 +6752,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdSetPerformanceOverrideINTEL", &wine_vkCmdSetPerformanceOverrideINTEL},
{"vkCmdSetPerformanceStreamMarkerINTEL", &wine_vkCmdSetPerformanceStreamMarkerINTEL},
{"vkCmdSetPrimitiveTopologyEXT", &wine_vkCmdSetPrimitiveTopologyEXT},
{"vkCmdSetRayTracingPipelineStackSizeKHR", &wine_vkCmdSetRayTracingPipelineStackSizeKHR},
{"vkCmdSetSampleLocationsEXT", &wine_vkCmdSetSampleLocationsEXT},
{"vkCmdSetScissor", &wine_vkCmdSetScissor},
{"vkCmdSetScissorWithCountEXT", &wine_vkCmdSetScissorWithCountEXT},
@ -6199,18 +6765,26 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdSetViewportShadingRatePaletteNV", &wine_vkCmdSetViewportShadingRatePaletteNV},
{"vkCmdSetViewportWScalingNV", &wine_vkCmdSetViewportWScalingNV},
{"vkCmdSetViewportWithCountEXT", &wine_vkCmdSetViewportWithCountEXT},
{"vkCmdTraceRaysIndirectKHR", &wine_vkCmdTraceRaysIndirectKHR},
{"vkCmdTraceRaysKHR", &wine_vkCmdTraceRaysKHR},
{"vkCmdTraceRaysNV", &wine_vkCmdTraceRaysNV},
{"vkCmdUpdateBuffer", &wine_vkCmdUpdateBuffer},
{"vkCmdWaitEvents", &wine_vkCmdWaitEvents},
{"vkCmdWriteAccelerationStructuresPropertiesKHR", &wine_vkCmdWriteAccelerationStructuresPropertiesKHR},
{"vkCmdWriteAccelerationStructuresPropertiesNV", &wine_vkCmdWriteAccelerationStructuresPropertiesNV},
{"vkCmdWriteBufferMarkerAMD", &wine_vkCmdWriteBufferMarkerAMD},
{"vkCmdWriteTimestamp", &wine_vkCmdWriteTimestamp},
{"vkCompileDeferredNV", &wine_vkCompileDeferredNV},
{"vkCopyAccelerationStructureKHR", &wine_vkCopyAccelerationStructureKHR},
{"vkCopyAccelerationStructureToMemoryKHR", &wine_vkCopyAccelerationStructureToMemoryKHR},
{"vkCopyMemoryToAccelerationStructureKHR", &wine_vkCopyMemoryToAccelerationStructureKHR},
{"vkCreateAccelerationStructureKHR", &wine_vkCreateAccelerationStructureKHR},
{"vkCreateAccelerationStructureNV", &wine_vkCreateAccelerationStructureNV},
{"vkCreateBuffer", &wine_vkCreateBuffer},
{"vkCreateBufferView", &wine_vkCreateBufferView},
{"vkCreateCommandPool", &wine_vkCreateCommandPool},
{"vkCreateComputePipelines", &wine_vkCreateComputePipelines},
{"vkCreateDeferredOperationKHR", &wine_vkCreateDeferredOperationKHR},
{"vkCreateDescriptorPool", &wine_vkCreateDescriptorPool},
{"vkCreateDescriptorSetLayout", &wine_vkCreateDescriptorSetLayout},
{"vkCreateDescriptorUpdateTemplate", &wine_vkCreateDescriptorUpdateTemplate},
@ -6226,6 +6800,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCreatePipelineLayout", &wine_vkCreatePipelineLayout},
{"vkCreatePrivateDataSlotEXT", &wine_vkCreatePrivateDataSlotEXT},
{"vkCreateQueryPool", &wine_vkCreateQueryPool},
{"vkCreateRayTracingPipelinesKHR", &wine_vkCreateRayTracingPipelinesKHR},
{"vkCreateRayTracingPipelinesNV", &wine_vkCreateRayTracingPipelinesNV},
{"vkCreateRenderPass", &wine_vkCreateRenderPass},
{"vkCreateRenderPass2", &wine_vkCreateRenderPass2},
@ -6239,10 +6814,13 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCreateValidationCacheEXT", &wine_vkCreateValidationCacheEXT},
{"vkDebugMarkerSetObjectNameEXT", &wine_vkDebugMarkerSetObjectNameEXT},
{"vkDebugMarkerSetObjectTagEXT", &wine_vkDebugMarkerSetObjectTagEXT},
{"vkDeferredOperationJoinKHR", &wine_vkDeferredOperationJoinKHR},
{"vkDestroyAccelerationStructureKHR", &wine_vkDestroyAccelerationStructureKHR},
{"vkDestroyAccelerationStructureNV", &wine_vkDestroyAccelerationStructureNV},
{"vkDestroyBuffer", &wine_vkDestroyBuffer},
{"vkDestroyBufferView", &wine_vkDestroyBufferView},
{"vkDestroyCommandPool", &wine_vkDestroyCommandPool},
{"vkDestroyDeferredOperationKHR", &wine_vkDestroyDeferredOperationKHR},
{"vkDestroyDescriptorPool", &wine_vkDestroyDescriptorPool},
{"vkDestroyDescriptorSetLayout", &wine_vkDestroyDescriptorSetLayout},
{"vkDestroyDescriptorUpdateTemplate", &wine_vkDestroyDescriptorUpdateTemplate},
@ -6273,6 +6851,8 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkFreeCommandBuffers", &wine_vkFreeCommandBuffers},
{"vkFreeDescriptorSets", &wine_vkFreeDescriptorSets},
{"vkFreeMemory", &wine_vkFreeMemory},
{"vkGetAccelerationStructureBuildSizesKHR", &wine_vkGetAccelerationStructureBuildSizesKHR},
{"vkGetAccelerationStructureDeviceAddressKHR", &wine_vkGetAccelerationStructureDeviceAddressKHR},
{"vkGetAccelerationStructureHandleNV", &wine_vkGetAccelerationStructureHandleNV},
{"vkGetAccelerationStructureMemoryRequirementsNV", &wine_vkGetAccelerationStructureMemoryRequirementsNV},
{"vkGetBufferDeviceAddress", &wine_vkGetBufferDeviceAddress},
@ -6284,8 +6864,11 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkGetBufferOpaqueCaptureAddress", &wine_vkGetBufferOpaqueCaptureAddress},
{"vkGetBufferOpaqueCaptureAddressKHR", &wine_vkGetBufferOpaqueCaptureAddressKHR},
{"vkGetCalibratedTimestampsEXT", &wine_vkGetCalibratedTimestampsEXT},
{"vkGetDeferredOperationMaxConcurrencyKHR", &wine_vkGetDeferredOperationMaxConcurrencyKHR},
{"vkGetDeferredOperationResultKHR", &wine_vkGetDeferredOperationResultKHR},
{"vkGetDescriptorSetLayoutSupport", &wine_vkGetDescriptorSetLayoutSupport},
{"vkGetDescriptorSetLayoutSupportKHR", &wine_vkGetDescriptorSetLayoutSupportKHR},
{"vkGetDeviceAccelerationStructureCompatibilityKHR", &wine_vkGetDeviceAccelerationStructureCompatibilityKHR},
{"vkGetDeviceGroupPeerMemoryFeatures", &wine_vkGetDeviceGroupPeerMemoryFeatures},
{"vkGetDeviceGroupPeerMemoryFeaturesKHR", &wine_vkGetDeviceGroupPeerMemoryFeaturesKHR},
{"vkGetDeviceGroupPresentCapabilitiesKHR", &wine_vkGetDeviceGroupPresentCapabilitiesKHR},
@ -6315,7 +6898,10 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkGetPrivateDataEXT", &wine_vkGetPrivateDataEXT},
{"vkGetQueryPoolResults", &wine_vkGetQueryPoolResults},
{"vkGetQueueCheckpointDataNV", &wine_vkGetQueueCheckpointDataNV},
{"vkGetRayTracingCaptureReplayShaderGroupHandlesKHR", &wine_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR},
{"vkGetRayTracingShaderGroupHandlesKHR", &wine_vkGetRayTracingShaderGroupHandlesKHR},
{"vkGetRayTracingShaderGroupHandlesNV", &wine_vkGetRayTracingShaderGroupHandlesNV},
{"vkGetRayTracingShaderGroupStackSizeKHR", &wine_vkGetRayTracingShaderGroupStackSizeKHR},
{"vkGetRenderAreaGranularity", &wine_vkGetRenderAreaGranularity},
{"vkGetSemaphoreCounterValue", &wine_vkGetSemaphoreCounterValue},
{"vkGetSemaphoreCounterValueKHR", &wine_vkGetSemaphoreCounterValueKHR},
@ -6360,6 +6946,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkWaitForFences", &wine_vkWaitForFences},
{"vkWaitSemaphores", &wine_vkWaitSemaphores},
{"vkWaitSemaphoresKHR", &wine_vkWaitSemaphoresKHR},
{"vkWriteAccelerationStructuresPropertiesKHR", &wine_vkWriteAccelerationStructuresPropertiesKHR},
};
static const struct vulkan_func vk_instance_dispatch_table[] =
@ -6536,11 +7123,13 @@ static const char * const vk_device_extensions[] =
"VK_INTEL_shader_integer_functions2",
"VK_KHR_16bit_storage",
"VK_KHR_8bit_storage",
"VK_KHR_acceleration_structure",
"VK_KHR_bind_memory2",
"VK_KHR_buffer_device_address",
"VK_KHR_copy_commands2",
"VK_KHR_create_renderpass2",
"VK_KHR_dedicated_allocation",
"VK_KHR_deferred_host_operations",
"VK_KHR_depth_stencil_resolve",
"VK_KHR_descriptor_update_template",
"VK_KHR_device_group",
@ -6560,7 +7149,10 @@ static const char * const vk_device_extensions[] =
"VK_KHR_multiview",
"VK_KHR_performance_query",
"VK_KHR_pipeline_executable_properties",
"VK_KHR_pipeline_library",
"VK_KHR_push_descriptor",
"VK_KHR_ray_query",
"VK_KHR_ray_tracing_pipeline",
"VK_KHR_relaxed_block_layout",
"VK_KHR_sampler_mirror_clamp_to_edge",
"VK_KHR_sampler_ycbcr_conversion",

View File

@ -143,18 +143,17 @@ typedef struct VkCommandBufferBeginInfo_host
} VkCommandBufferBeginInfo_host;
typedef struct VkBindAccelerationStructureMemoryInfoKHR_host
typedef struct VkBindAccelerationStructureMemoryInfoNV_host
{
VkStructureType sType;
const void *pNext;
VkAccelerationStructureKHR accelerationStructure;
VkAccelerationStructureNV accelerationStructure;
VkDeviceMemory memory;
VkDeviceSize memoryOffset;
uint32_t deviceIndexCount;
const uint32_t *pDeviceIndices;
} VkBindAccelerationStructureMemoryInfoKHR_host;
} VkBindAccelerationStructureMemoryInfoNV_host;
typedef VkBindAccelerationStructureMemoryInfoKHR VkBindAccelerationStructureMemoryInfoNV;
typedef struct VkBindBufferMemoryInfo_host
{
@ -178,6 +177,22 @@ typedef struct VkBindImageMemoryInfo_host
typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR;
typedef struct VkAccelerationStructureBuildGeometryInfoKHR_host
{
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_host;
typedef struct VkConditionalRenderingBeginInfoEXT_host
{
VkStructureType sType;
@ -272,6 +287,26 @@ typedef struct VkAccelerationStructureInfoNV_host
} VkAccelerationStructureInfoNV_host;
typedef struct VkCopyAccelerationStructureInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkAccelerationStructureKHR src;
VkAccelerationStructureKHR dst;
VkCopyAccelerationStructureModeKHR mode;
} VkCopyAccelerationStructureInfoKHR_host;
typedef struct VkCopyAccelerationStructureToMemoryInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkAccelerationStructureKHR src;
VkDeviceOrHostAddressKHR dst;
VkCopyAccelerationStructureModeKHR mode;
} VkCopyAccelerationStructureToMemoryInfoKHR_host;
typedef struct VkBufferCopy_host
{
VkDeviceSize srcOffset;
@ -362,6 +397,16 @@ typedef struct VkCopyImageToBufferInfo2KHR_host
} VkCopyImageToBufferInfo2KHR_host;
typedef struct VkCopyMemoryToAccelerationStructureInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkDeviceOrHostAddressConstKHR src;
VkAccelerationStructureKHR dst;
VkCopyAccelerationStructureModeKHR mode;
} VkCopyMemoryToAccelerationStructureInfoKHR_host;
typedef struct VkIndirectCommandsStreamNV_host
{
VkBuffer buffer;
@ -480,6 +525,27 @@ typedef struct VkPerformanceOverrideInfoINTEL_host
} VkPerformanceOverrideInfoINTEL_host;
typedef struct VkStridedDeviceAddressRegionKHR_host
{
VkDeviceAddress deviceAddress;
VkDeviceSize stride;
VkDeviceSize size;
} VkStridedDeviceAddressRegionKHR_host;
typedef struct VkAccelerationStructureCreateInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkAccelerationStructureCreateFlagsKHR createFlags;
VkBuffer buffer;
VkDeviceSize offset;
VkDeviceSize size;
VkAccelerationStructureTypeKHR type;
VkDeviceAddress deviceAddress;
} VkAccelerationStructureCreateInfoKHR_host;
typedef struct VkAccelerationStructureCreateInfoNV_host
{
VkStructureType sType;
@ -638,6 +704,25 @@ typedef struct VkIndirectCommandsLayoutCreateInfoNV_host
} VkIndirectCommandsLayoutCreateInfoNV_host;
typedef struct VkRayTracingPipelineCreateInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkPipelineCreateFlags flags;
uint32_t stageCount;
const VkPipelineShaderStageCreateInfo_host *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_host;
typedef struct VkRayTracingPipelineCreateInfoNV_host
{
VkStructureType sType;
@ -709,6 +794,24 @@ typedef struct VkMappedMemoryRange_host
} VkMappedMemoryRange_host;
typedef struct VkAccelerationStructureBuildSizesInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkDeviceSize accelerationStructureSize;
VkDeviceSize updateScratchSize;
VkDeviceSize buildScratchSize;
} VkAccelerationStructureBuildSizesInfoKHR_host;
typedef struct VkAccelerationStructureDeviceAddressInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkAccelerationStructureKHR accelerationStructure;
} VkAccelerationStructureDeviceAddressInfoKHR_host;
typedef struct VkAccelerationStructureMemoryRequirementsInfoNV_host
{
VkStructureType sType;
@ -1180,9 +1283,9 @@ struct vulkan_device_funcs
VkResult (*p_vkBeginCommandBuffer)(VkCommandBuffer, const VkCommandBufferBeginInfo *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoKHR_host *);
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoNV_host *);
#else
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoKHR *);
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoNV *);
#endif
VkResult (*p_vkBindBufferMemory)(VkDevice, VkBuffer, VkDeviceMemory, VkDeviceSize);
#if defined(USE_STRUCT_CONVERSION)
@ -1206,6 +1309,11 @@ struct vulkan_device_funcs
#else
VkResult (*p_vkBindImageMemory2KHR)(VkDevice, uint32_t, const VkBindImageMemoryInfo *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkBuildAccelerationStructuresKHR)(VkDevice, VkDeferredOperationKHR, uint32_t, const VkAccelerationStructureBuildGeometryInfoKHR_host *, const VkAccelerationStructureBuildRangeInfoKHR * const*);
#else
VkResult (*p_vkBuildAccelerationStructuresKHR)(VkDevice, VkDeferredOperationKHR, uint32_t, const VkAccelerationStructureBuildGeometryInfoKHR *, const VkAccelerationStructureBuildRangeInfoKHR * const*);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdBeginConditionalRenderingEXT)(VkCommandBuffer, const VkConditionalRenderingBeginInfoEXT_host *);
#else
@ -1245,14 +1353,34 @@ struct vulkan_device_funcs
void (*p_vkCmdBlitImage2KHR)(VkCommandBuffer, const VkBlitImageInfo2KHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV_host *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureKHR, VkAccelerationStructureKHR, VkBuffer, VkDeviceSize);
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV_host *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureNV, VkAccelerationStructureNV, VkBuffer, VkDeviceSize);
#else
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureKHR, VkAccelerationStructureKHR, VkBuffer, VkDeviceSize);
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureNV, VkAccelerationStructureNV, VkBuffer, VkDeviceSize);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdBuildAccelerationStructuresIndirectKHR)(VkCommandBuffer, uint32_t, const VkAccelerationStructureBuildGeometryInfoKHR_host *, const VkDeviceAddress *, const uint32_t *, const uint32_t * const*);
#else
void (*p_vkCmdBuildAccelerationStructuresIndirectKHR)(VkCommandBuffer, uint32_t, const VkAccelerationStructureBuildGeometryInfoKHR *, const VkDeviceAddress *, const uint32_t *, const uint32_t * const*);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdBuildAccelerationStructuresKHR)(VkCommandBuffer, uint32_t, const VkAccelerationStructureBuildGeometryInfoKHR_host *, const VkAccelerationStructureBuildRangeInfoKHR * const*);
#else
void (*p_vkCmdBuildAccelerationStructuresKHR)(VkCommandBuffer, uint32_t, const VkAccelerationStructureBuildGeometryInfoKHR *, const VkAccelerationStructureBuildRangeInfoKHR * const*);
#endif
void (*p_vkCmdClearAttachments)(VkCommandBuffer, uint32_t, const VkClearAttachment *, uint32_t, const VkClearRect *);
void (*p_vkCmdClearColorImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearColorValue *, uint32_t, const VkImageSubresourceRange *);
void (*p_vkCmdClearDepthStencilImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearDepthStencilValue *, uint32_t, const VkImageSubresourceRange *);
void (*p_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer, VkAccelerationStructureKHR, VkAccelerationStructureKHR, VkCopyAccelerationStructureModeKHR);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdCopyAccelerationStructureKHR)(VkCommandBuffer, const VkCopyAccelerationStructureInfoKHR_host *);
#else
void (*p_vkCmdCopyAccelerationStructureKHR)(VkCommandBuffer, const VkCopyAccelerationStructureInfoKHR *);
#endif
void (*p_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer, VkAccelerationStructureNV, VkAccelerationStructureNV, VkCopyAccelerationStructureModeKHR);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdCopyAccelerationStructureToMemoryKHR)(VkCommandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR_host *);
#else
void (*p_vkCmdCopyAccelerationStructureToMemoryKHR)(VkCommandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdCopyBuffer)(VkCommandBuffer, VkBuffer, VkBuffer, uint32_t, const VkBufferCopy_host *);
#else
@ -1288,6 +1416,11 @@ struct vulkan_device_funcs
void (*p_vkCmdCopyImageToBuffer2KHR)(VkCommandBuffer, const VkCopyImageToBufferInfo2KHR_host *);
#else
void (*p_vkCmdCopyImageToBuffer2KHR)(VkCommandBuffer, const VkCopyImageToBufferInfo2KHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdCopyMemoryToAccelerationStructureKHR)(VkCommandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR_host *);
#else
void (*p_vkCmdCopyMemoryToAccelerationStructureKHR)(VkCommandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR *);
#endif
void (*p_vkCmdCopyQueryPoolResults)(VkCommandBuffer, VkQueryPool, uint32_t, uint32_t, VkBuffer, VkDeviceSize, VkDeviceSize, VkQueryResultFlags);
void (*p_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer, const VkDebugMarkerMarkerInfoEXT *);
@ -1387,6 +1520,7 @@ struct vulkan_device_funcs
#endif
VkResult (*p_vkCmdSetPerformanceStreamMarkerINTEL)(VkCommandBuffer, const VkPerformanceStreamMarkerInfoINTEL *);
void (*p_vkCmdSetPrimitiveTopologyEXT)(VkCommandBuffer, VkPrimitiveTopology);
void (*p_vkCmdSetRayTracingPipelineStackSizeKHR)(VkCommandBuffer, uint32_t);
void (*p_vkCmdSetSampleLocationsEXT)(VkCommandBuffer, const VkSampleLocationsInfoEXT *);
void (*p_vkCmdSetScissor)(VkCommandBuffer, uint32_t, uint32_t, const VkRect2D *);
void (*p_vkCmdSetScissorWithCountEXT)(VkCommandBuffer, uint32_t, const VkRect2D *);
@ -1399,6 +1533,16 @@ struct vulkan_device_funcs
void (*p_vkCmdSetViewportShadingRatePaletteNV)(VkCommandBuffer, uint32_t, uint32_t, const VkShadingRatePaletteNV *);
void (*p_vkCmdSetViewportWScalingNV)(VkCommandBuffer, uint32_t, uint32_t, const VkViewportWScalingNV *);
void (*p_vkCmdSetViewportWithCountEXT)(VkCommandBuffer, uint32_t, const VkViewport *);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdTraceRaysIndirectKHR)(VkCommandBuffer, const VkStridedDeviceAddressRegionKHR_host *, const VkStridedDeviceAddressRegionKHR_host *, const VkStridedDeviceAddressRegionKHR_host *, const VkStridedDeviceAddressRegionKHR_host *, VkDeviceAddress);
#else
void (*p_vkCmdTraceRaysIndirectKHR)(VkCommandBuffer, const VkStridedDeviceAddressRegionKHR *, const VkStridedDeviceAddressRegionKHR *, const VkStridedDeviceAddressRegionKHR *, const VkStridedDeviceAddressRegionKHR *, VkDeviceAddress);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdTraceRaysKHR)(VkCommandBuffer, const VkStridedDeviceAddressRegionKHR_host *, const VkStridedDeviceAddressRegionKHR_host *, const VkStridedDeviceAddressRegionKHR_host *, const VkStridedDeviceAddressRegionKHR_host *, uint32_t, uint32_t, uint32_t);
#else
void (*p_vkCmdTraceRaysKHR)(VkCommandBuffer, const VkStridedDeviceAddressRegionKHR *, const VkStridedDeviceAddressRegionKHR *, const VkStridedDeviceAddressRegionKHR *, const VkStridedDeviceAddressRegionKHR *, uint32_t, uint32_t, uint32_t);
#endif
void (*p_vkCmdTraceRaysNV)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, VkDeviceSize, VkBuffer, VkDeviceSize, VkDeviceSize, VkBuffer, VkDeviceSize, VkDeviceSize, uint32_t, uint32_t, uint32_t);
void (*p_vkCmdUpdateBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkDeviceSize, const void *);
#if defined(USE_STRUCT_CONVERSION)
@ -1406,10 +1550,31 @@ struct vulkan_device_funcs
#else
void (*p_vkCmdWaitEvents)(VkCommandBuffer, uint32_t, const VkEvent *, VkPipelineStageFlags, VkPipelineStageFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
#endif
void (*p_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, VkQueryPool, uint32_t);
void (*p_vkCmdWriteAccelerationStructuresPropertiesKHR)(VkCommandBuffer, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, VkQueryPool, uint32_t);
void (*p_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer, uint32_t, const VkAccelerationStructureNV *, VkQueryType, VkQueryPool, uint32_t);
void (*p_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer, VkPipelineStageFlagBits, VkBuffer, VkDeviceSize, uint32_t);
void (*p_vkCmdWriteTimestamp)(VkCommandBuffer, VkPipelineStageFlagBits, VkQueryPool, uint32_t);
VkResult (*p_vkCompileDeferredNV)(VkDevice, VkPipeline, uint32_t);
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCopyAccelerationStructureKHR)(VkDevice, VkDeferredOperationKHR, const VkCopyAccelerationStructureInfoKHR_host *);
#else
VkResult (*p_vkCopyAccelerationStructureKHR)(VkDevice, VkDeferredOperationKHR, const VkCopyAccelerationStructureInfoKHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCopyAccelerationStructureToMemoryKHR)(VkDevice, VkDeferredOperationKHR, const VkCopyAccelerationStructureToMemoryInfoKHR_host *);
#else
VkResult (*p_vkCopyAccelerationStructureToMemoryKHR)(VkDevice, VkDeferredOperationKHR, const VkCopyAccelerationStructureToMemoryInfoKHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCopyMemoryToAccelerationStructureKHR)(VkDevice, VkDeferredOperationKHR, const VkCopyMemoryToAccelerationStructureInfoKHR_host *);
#else
VkResult (*p_vkCopyMemoryToAccelerationStructureKHR)(VkDevice, VkDeferredOperationKHR, const VkCopyMemoryToAccelerationStructureInfoKHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCreateAccelerationStructureKHR)(VkDevice, const VkAccelerationStructureCreateInfoKHR_host *, const VkAllocationCallbacks *, VkAccelerationStructureKHR *);
#else
VkResult (*p_vkCreateAccelerationStructureKHR)(VkDevice, const VkAccelerationStructureCreateInfoKHR *, const VkAllocationCallbacks *, VkAccelerationStructureKHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCreateAccelerationStructureNV)(VkDevice, const VkAccelerationStructureCreateInfoNV_host *, const VkAllocationCallbacks *, VkAccelerationStructureNV *);
#else
@ -1431,6 +1596,7 @@ struct vulkan_device_funcs
#else
VkResult (*p_vkCreateComputePipelines)(VkDevice, VkPipelineCache, uint32_t, const VkComputePipelineCreateInfo *, const VkAllocationCallbacks *, VkPipeline *);
#endif
VkResult (*p_vkCreateDeferredOperationKHR)(VkDevice, const VkAllocationCallbacks *, VkDeferredOperationKHR *);
VkResult (*p_vkCreateDescriptorPool)(VkDevice, const VkDescriptorPoolCreateInfo *, const VkAllocationCallbacks *, VkDescriptorPool *);
VkResult (*p_vkCreateDescriptorSetLayout)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, const VkAllocationCallbacks *, VkDescriptorSetLayout *);
#if defined(USE_STRUCT_CONVERSION)
@ -1470,6 +1636,11 @@ struct vulkan_device_funcs
VkResult (*p_vkCreatePipelineLayout)(VkDevice, const VkPipelineLayoutCreateInfo *, const VkAllocationCallbacks *, VkPipelineLayout *);
VkResult (*p_vkCreatePrivateDataSlotEXT)(VkDevice, const VkPrivateDataSlotCreateInfoEXT *, const VkAllocationCallbacks *, VkPrivateDataSlotEXT *);
VkResult (*p_vkCreateQueryPool)(VkDevice, const VkQueryPoolCreateInfo *, const VkAllocationCallbacks *, VkQueryPool *);
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCreateRayTracingPipelinesKHR)(VkDevice, VkDeferredOperationKHR, VkPipelineCache, uint32_t, const VkRayTracingPipelineCreateInfoKHR_host *, const VkAllocationCallbacks *, VkPipeline *);
#else
VkResult (*p_vkCreateRayTracingPipelinesKHR)(VkDevice, VkDeferredOperationKHR, VkPipelineCache, uint32_t, const VkRayTracingPipelineCreateInfoKHR *, const VkAllocationCallbacks *, VkPipeline *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCreateRayTracingPipelinesNV)(VkDevice, VkPipelineCache, uint32_t, const VkRayTracingPipelineCreateInfoNV_host *, const VkAllocationCallbacks *, VkPipeline *);
#else
@ -1499,10 +1670,13 @@ struct vulkan_device_funcs
#else
VkResult (*p_vkDebugMarkerSetObjectTagEXT)(VkDevice, const VkDebugMarkerObjectTagInfoEXT *);
#endif
void (*p_vkDestroyAccelerationStructureNV)(VkDevice, VkAccelerationStructureKHR, const VkAllocationCallbacks *);
VkResult (*p_vkDeferredOperationJoinKHR)(VkDevice, VkDeferredOperationKHR);
void (*p_vkDestroyAccelerationStructureKHR)(VkDevice, VkAccelerationStructureKHR, const VkAllocationCallbacks *);
void (*p_vkDestroyAccelerationStructureNV)(VkDevice, VkAccelerationStructureNV, const VkAllocationCallbacks *);
void (*p_vkDestroyBuffer)(VkDevice, VkBuffer, const VkAllocationCallbacks *);
void (*p_vkDestroyBufferView)(VkDevice, VkBufferView, const VkAllocationCallbacks *);
void (*p_vkDestroyCommandPool)(VkDevice, VkCommandPool, const VkAllocationCallbacks *);
void (*p_vkDestroyDeferredOperationKHR)(VkDevice, VkDeferredOperationKHR, const VkAllocationCallbacks *);
void (*p_vkDestroyDescriptorPool)(VkDevice, VkDescriptorPool, const VkAllocationCallbacks *);
void (*p_vkDestroyDescriptorSetLayout)(VkDevice, VkDescriptorSetLayout, const VkAllocationCallbacks *);
void (*p_vkDestroyDescriptorUpdateTemplate)(VkDevice, VkDescriptorUpdateTemplate, const VkAllocationCallbacks *);
@ -1537,7 +1711,17 @@ struct vulkan_device_funcs
void (*p_vkFreeCommandBuffers)(VkDevice, VkCommandPool, uint32_t, const VkCommandBuffer *);
VkResult (*p_vkFreeDescriptorSets)(VkDevice, VkDescriptorPool, uint32_t, const VkDescriptorSet *);
void (*p_vkFreeMemory)(VkDevice, VkDeviceMemory, const VkAllocationCallbacks *);
VkResult (*p_vkGetAccelerationStructureHandleNV)(VkDevice, VkAccelerationStructureKHR, size_t, void *);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkGetAccelerationStructureBuildSizesKHR)(VkDevice, VkAccelerationStructureBuildTypeKHR, const VkAccelerationStructureBuildGeometryInfoKHR_host *, const uint32_t *, VkAccelerationStructureBuildSizesInfoKHR_host *);
#else
void (*p_vkGetAccelerationStructureBuildSizesKHR)(VkDevice, VkAccelerationStructureBuildTypeKHR, const VkAccelerationStructureBuildGeometryInfoKHR *, const uint32_t *, VkAccelerationStructureBuildSizesInfoKHR *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkDeviceAddress (*p_vkGetAccelerationStructureDeviceAddressKHR)(VkDevice, const VkAccelerationStructureDeviceAddressInfoKHR_host *);
#else
VkDeviceAddress (*p_vkGetAccelerationStructureDeviceAddressKHR)(VkDevice, const VkAccelerationStructureDeviceAddressInfoKHR *);
#endif
VkResult (*p_vkGetAccelerationStructureHandleNV)(VkDevice, VkAccelerationStructureNV, size_t, void *);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice, const VkAccelerationStructureMemoryRequirementsInfoNV_host *, VkMemoryRequirements2KHR_host *);
#else
@ -1584,8 +1768,11 @@ struct vulkan_device_funcs
uint64_t (*p_vkGetBufferOpaqueCaptureAddressKHR)(VkDevice, const VkBufferDeviceAddressInfo *);
#endif
VkResult (*p_vkGetCalibratedTimestampsEXT)(VkDevice, uint32_t, const VkCalibratedTimestampInfoEXT *, uint64_t *, uint64_t *);
uint32_t (*p_vkGetDeferredOperationMaxConcurrencyKHR)(VkDevice, VkDeferredOperationKHR);
VkResult (*p_vkGetDeferredOperationResultKHR)(VkDevice, VkDeferredOperationKHR);
void (*p_vkGetDescriptorSetLayoutSupport)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, VkDescriptorSetLayoutSupport *);
void (*p_vkGetDescriptorSetLayoutSupportKHR)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, VkDescriptorSetLayoutSupport *);
void (*p_vkGetDeviceAccelerationStructureCompatibilityKHR)(VkDevice, const VkAccelerationStructureVersionInfoKHR *, VkAccelerationStructureCompatibilityKHR *);
void (*p_vkGetDeviceGroupPeerMemoryFeatures)(VkDevice, uint32_t, uint32_t, uint32_t, VkPeerMemoryFeatureFlags *);
void (*p_vkGetDeviceGroupPeerMemoryFeaturesKHR)(VkDevice, uint32_t, uint32_t, uint32_t, VkPeerMemoryFeatureFlags *);
VkResult (*p_vkGetDeviceGroupPresentCapabilitiesKHR)(VkDevice, VkDeviceGroupPresentCapabilitiesKHR *);
@ -1662,7 +1849,10 @@ struct vulkan_device_funcs
void (*p_vkGetPrivateDataEXT)(VkDevice, VkObjectType, uint64_t, VkPrivateDataSlotEXT, uint64_t *);
VkResult (*p_vkGetQueryPoolResults)(VkDevice, VkQueryPool, uint32_t, uint32_t, size_t, void *, VkDeviceSize, VkQueryResultFlags);
void (*p_vkGetQueueCheckpointDataNV)(VkQueue, uint32_t *, VkCheckpointDataNV *);
VkResult (*p_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)(VkDevice, VkPipeline, uint32_t, uint32_t, size_t, void *);
VkResult (*p_vkGetRayTracingShaderGroupHandlesKHR)(VkDevice, VkPipeline, uint32_t, uint32_t, size_t, void *);
VkResult (*p_vkGetRayTracingShaderGroupHandlesNV)(VkDevice, VkPipeline, uint32_t, uint32_t, size_t, void *);
VkDeviceSize (*p_vkGetRayTracingShaderGroupStackSizeKHR)(VkDevice, VkPipeline, uint32_t, VkShaderGroupShaderKHR);
void (*p_vkGetRenderAreaGranularity)(VkDevice, VkRenderPass, VkExtent2D *);
VkResult (*p_vkGetSemaphoreCounterValue)(VkDevice, VkSemaphore, uint64_t *);
VkResult (*p_vkGetSemaphoreCounterValueKHR)(VkDevice, VkSemaphore, uint64_t *);
@ -1735,6 +1925,7 @@ struct vulkan_device_funcs
VkResult (*p_vkWaitForFences)(VkDevice, uint32_t, const VkFence *, VkBool32, uint64_t);
VkResult (*p_vkWaitSemaphores)(VkDevice, const VkSemaphoreWaitInfo *, uint64_t);
VkResult (*p_vkWaitSemaphoresKHR)(VkDevice, const VkSemaphoreWaitInfo *, uint64_t);
VkResult (*p_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, size_t, void *, size_t);
};
/* For use by vkInstance and children */
@ -1858,6 +2049,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkBindImageMemory) \
USE_VK_FUNC(vkBindImageMemory2) \
USE_VK_FUNC(vkBindImageMemory2KHR) \
USE_VK_FUNC(vkBuildAccelerationStructuresKHR) \
USE_VK_FUNC(vkCmdBeginConditionalRenderingEXT) \
USE_VK_FUNC(vkCmdBeginDebugUtilsLabelEXT) \
USE_VK_FUNC(vkCmdBeginQuery) \
@ -1877,10 +2069,14 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdBlitImage) \
USE_VK_FUNC(vkCmdBlitImage2KHR) \
USE_VK_FUNC(vkCmdBuildAccelerationStructureNV) \
USE_VK_FUNC(vkCmdBuildAccelerationStructuresIndirectKHR) \
USE_VK_FUNC(vkCmdBuildAccelerationStructuresKHR) \
USE_VK_FUNC(vkCmdClearAttachments) \
USE_VK_FUNC(vkCmdClearColorImage) \
USE_VK_FUNC(vkCmdClearDepthStencilImage) \
USE_VK_FUNC(vkCmdCopyAccelerationStructureKHR) \
USE_VK_FUNC(vkCmdCopyAccelerationStructureNV) \
USE_VK_FUNC(vkCmdCopyAccelerationStructureToMemoryKHR) \
USE_VK_FUNC(vkCmdCopyBuffer) \
USE_VK_FUNC(vkCmdCopyBuffer2KHR) \
USE_VK_FUNC(vkCmdCopyBufferToImage) \
@ -1889,6 +2085,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdCopyImage2KHR) \
USE_VK_FUNC(vkCmdCopyImageToBuffer) \
USE_VK_FUNC(vkCmdCopyImageToBuffer2KHR) \
USE_VK_FUNC(vkCmdCopyMemoryToAccelerationStructureKHR) \
USE_VK_FUNC(vkCmdCopyQueryPoolResults) \
USE_VK_FUNC(vkCmdDebugMarkerBeginEXT) \
USE_VK_FUNC(vkCmdDebugMarkerEndEXT) \
@ -1959,6 +2156,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdSetPerformanceOverrideINTEL) \
USE_VK_FUNC(vkCmdSetPerformanceStreamMarkerINTEL) \
USE_VK_FUNC(vkCmdSetPrimitiveTopologyEXT) \
USE_VK_FUNC(vkCmdSetRayTracingPipelineStackSizeKHR) \
USE_VK_FUNC(vkCmdSetSampleLocationsEXT) \
USE_VK_FUNC(vkCmdSetScissor) \
USE_VK_FUNC(vkCmdSetScissorWithCountEXT) \
@ -1971,18 +2169,26 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdSetViewportShadingRatePaletteNV) \
USE_VK_FUNC(vkCmdSetViewportWScalingNV) \
USE_VK_FUNC(vkCmdSetViewportWithCountEXT) \
USE_VK_FUNC(vkCmdTraceRaysIndirectKHR) \
USE_VK_FUNC(vkCmdTraceRaysKHR) \
USE_VK_FUNC(vkCmdTraceRaysNV) \
USE_VK_FUNC(vkCmdUpdateBuffer) \
USE_VK_FUNC(vkCmdWaitEvents) \
USE_VK_FUNC(vkCmdWriteAccelerationStructuresPropertiesKHR) \
USE_VK_FUNC(vkCmdWriteAccelerationStructuresPropertiesNV) \
USE_VK_FUNC(vkCmdWriteBufferMarkerAMD) \
USE_VK_FUNC(vkCmdWriteTimestamp) \
USE_VK_FUNC(vkCompileDeferredNV) \
USE_VK_FUNC(vkCopyAccelerationStructureKHR) \
USE_VK_FUNC(vkCopyAccelerationStructureToMemoryKHR) \
USE_VK_FUNC(vkCopyMemoryToAccelerationStructureKHR) \
USE_VK_FUNC(vkCreateAccelerationStructureKHR) \
USE_VK_FUNC(vkCreateAccelerationStructureNV) \
USE_VK_FUNC(vkCreateBuffer) \
USE_VK_FUNC(vkCreateBufferView) \
USE_VK_FUNC(vkCreateCommandPool) \
USE_VK_FUNC(vkCreateComputePipelines) \
USE_VK_FUNC(vkCreateDeferredOperationKHR) \
USE_VK_FUNC(vkCreateDescriptorPool) \
USE_VK_FUNC(vkCreateDescriptorSetLayout) \
USE_VK_FUNC(vkCreateDescriptorUpdateTemplate) \
@ -1998,6 +2204,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCreatePipelineLayout) \
USE_VK_FUNC(vkCreatePrivateDataSlotEXT) \
USE_VK_FUNC(vkCreateQueryPool) \
USE_VK_FUNC(vkCreateRayTracingPipelinesKHR) \
USE_VK_FUNC(vkCreateRayTracingPipelinesNV) \
USE_VK_FUNC(vkCreateRenderPass) \
USE_VK_FUNC(vkCreateRenderPass2) \
@ -2011,10 +2218,13 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCreateValidationCacheEXT) \
USE_VK_FUNC(vkDebugMarkerSetObjectNameEXT) \
USE_VK_FUNC(vkDebugMarkerSetObjectTagEXT) \
USE_VK_FUNC(vkDeferredOperationJoinKHR) \
USE_VK_FUNC(vkDestroyAccelerationStructureKHR) \
USE_VK_FUNC(vkDestroyAccelerationStructureNV) \
USE_VK_FUNC(vkDestroyBuffer) \
USE_VK_FUNC(vkDestroyBufferView) \
USE_VK_FUNC(vkDestroyCommandPool) \
USE_VK_FUNC(vkDestroyDeferredOperationKHR) \
USE_VK_FUNC(vkDestroyDescriptorPool) \
USE_VK_FUNC(vkDestroyDescriptorSetLayout) \
USE_VK_FUNC(vkDestroyDescriptorUpdateTemplate) \
@ -2045,6 +2255,8 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkFreeCommandBuffers) \
USE_VK_FUNC(vkFreeDescriptorSets) \
USE_VK_FUNC(vkFreeMemory) \
USE_VK_FUNC(vkGetAccelerationStructureBuildSizesKHR) \
USE_VK_FUNC(vkGetAccelerationStructureDeviceAddressKHR) \
USE_VK_FUNC(vkGetAccelerationStructureHandleNV) \
USE_VK_FUNC(vkGetAccelerationStructureMemoryRequirementsNV) \
USE_VK_FUNC(vkGetBufferDeviceAddress) \
@ -2056,8 +2268,11 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkGetBufferOpaqueCaptureAddress) \
USE_VK_FUNC(vkGetBufferOpaqueCaptureAddressKHR) \
USE_VK_FUNC(vkGetCalibratedTimestampsEXT) \
USE_VK_FUNC(vkGetDeferredOperationMaxConcurrencyKHR) \
USE_VK_FUNC(vkGetDeferredOperationResultKHR) \
USE_VK_FUNC(vkGetDescriptorSetLayoutSupport) \
USE_VK_FUNC(vkGetDescriptorSetLayoutSupportKHR) \
USE_VK_FUNC(vkGetDeviceAccelerationStructureCompatibilityKHR) \
USE_VK_FUNC(vkGetDeviceGroupPeerMemoryFeatures) \
USE_VK_FUNC(vkGetDeviceGroupPeerMemoryFeaturesKHR) \
USE_VK_FUNC(vkGetDeviceGroupPresentCapabilitiesKHR) \
@ -2086,7 +2301,10 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkGetPrivateDataEXT) \
USE_VK_FUNC(vkGetQueryPoolResults) \
USE_VK_FUNC(vkGetQueueCheckpointDataNV) \
USE_VK_FUNC(vkGetRayTracingCaptureReplayShaderGroupHandlesKHR) \
USE_VK_FUNC(vkGetRayTracingShaderGroupHandlesKHR) \
USE_VK_FUNC(vkGetRayTracingShaderGroupHandlesNV) \
USE_VK_FUNC(vkGetRayTracingShaderGroupStackSizeKHR) \
USE_VK_FUNC(vkGetRenderAreaGranularity) \
USE_VK_FUNC(vkGetSemaphoreCounterValue) \
USE_VK_FUNC(vkGetSemaphoreCounterValueKHR) \
@ -2130,7 +2348,8 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkUpdateDescriptorSets) \
USE_VK_FUNC(vkWaitForFences) \
USE_VK_FUNC(vkWaitSemaphores) \
USE_VK_FUNC(vkWaitSemaphoresKHR)
USE_VK_FUNC(vkWaitSemaphoresKHR) \
USE_VK_FUNC(vkWriteAccelerationStructuresPropertiesKHR)
#define ALL_VK_INSTANCE_FUNCS() \
USE_VK_FUNC(vkCreateDebugReportCallbackEXT) \

View File

@ -2,6 +2,6 @@
"file_format_version": "1.0.0",
"ICD": {
"library_path": ".\\winevulkan.dll",
"api_version": "1.2.160"
"api_version": "1.2.162"
}
}

File diff suppressed because it is too large Load Diff