successfully allocating with VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT working copying vulkan texture successfully passing D3D texture back to Flutter chore: Dart/Windows sample project: remove unnnecessary InvalidateRect from update() chore: Dart/Windows sample project: add generated bindings successfully blitting from Vulkan swapchain to D3D texture working Vulkan texture integration with Flutter refactor to allow disposal of resources in destructors handle destroyTexture correctly correctly implement surface resizing/destruction move Windows engine to Vulkan backend and flush after creating swapchain add vulkan + vkshaders to Windows libs update materials with Vulkan move Vulkan implementation to thermion_Dart remove extras folder thermion_flutter plugin updates update build hook to copy .lib file to output directory and use -vulkan lib zip file thermion_flutter cleanup reinstate stereoscopic on Windows add dxgi and d3d11.lib to windows header pragma update cli_windows sample project copy filament/vulkan headers to output directory. This was originally added to facilitate linking on Windows (where thermion_flutter_plugin.cpp needs the Vulkan-related headers), but this doesn't actually solve the problem because there's no way that I've found to get the directory structure correct in the Dart native_assets build directory unless you explicitly address each inidivual file. The current approach is therefore to just keep a permanent copy of the headers in the thermion_filament directory (meaning these will need to be updated manually if the Filament version changes). However, I decided to keep the changes to build.dart because it doesn't have much negative impact and may be helpful in future. disable stereoscopic on Windows and disable handle use after free checks use filament headers for thermion_flutter throw Exception for MSAA on Windows (note that passing msaa:true for setAntiAliasing doesn't actually set MSAA on other platforms, but at least it won't cause the engine to crash) change header include path for Windows/Vulkan change header include path for Windows/Vulkan add filament/vulkan headers for flutter (Windows) ensure destroyTexture platform methods accept an integer rather than a list handle Android/Windows swapchain creation separately
995 lines
60 KiB
C++
995 lines
60 KiB
C++
/*
|
|
* Copyright (C) 2022 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
/**********************************************************************************************
|
|
* Generated by bluevk/bluevk-gen.py
|
|
* DO NOT EDIT
|
|
**********************************************************************************************/
|
|
|
|
|
|
#ifndef TNT_FILAMENT_BLUEVK_H
|
|
#define TNT_FILAMENT_BLUEVK_H
|
|
|
|
#define VK_ENABLE_BETA_EXTENSIONS
|
|
|
|
// BlueVK dynamically loads all function pointers, so it cannot allow function prototypes, which
|
|
// would assume static linking for Vulkan entry points.
|
|
#if defined(VULKAN_H_) && !defined(VK_NO_PROTOTYPES)
|
|
#error Please do not include vulkan.h when using BlueVK
|
|
#endif
|
|
|
|
// Even though we don't use function prototypes, we still need to include vulkan.h for all Vulkan
|
|
// types, including the PFN_ types.
|
|
#ifndef VULKAN_H_
|
|
#ifndef VK_NO_PROTOTYPES
|
|
#define VK_NO_PROTOTYPES
|
|
#endif
|
|
|
|
#if defined(__ANDROID__)
|
|
#define VK_USE_PLATFORM_ANDROID_KHR 1
|
|
#elif defined(IOS)
|
|
#define VK_USE_PLATFORM_IOS_MVK 1
|
|
#elif defined(__linux__)
|
|
#if defined(FILAMENT_SUPPORTS_XCB)
|
|
#define VK_USE_PLATFORM_XCB_KHR 1
|
|
#endif
|
|
#if defined(FILAMENT_SUPPORTS_XLIB)
|
|
#define VK_USE_PLATFORM_XLIB_KHR 1
|
|
#endif
|
|
#if defined(FILAMENT_SUPPORTS_WAYLAND)
|
|
#define VK_USE_PLATFORM_WAYLAND_KHR 1
|
|
#endif
|
|
#elif defined(__APPLE__)
|
|
#define VK_USE_PLATFORM_MACOS_MVK 1
|
|
#elif defined(WIN32)
|
|
#define VK_USE_PLATFORM_WIN32_KHR 1
|
|
#endif
|
|
|
|
#include <vulkan/vulkan.h>
|
|
#endif
|
|
|
|
#include <utils/unwindows.h>
|
|
|
|
namespace bluevk {
|
|
|
|
// Returns false if BlueGL could not find the Vulkan shared library.
|
|
bool initialize();
|
|
|
|
void bindInstance(VkInstance instance);
|
|
|
|
#if defined(VK_VERSION_1_0)
|
|
extern PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
|
|
extern PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
|
|
extern PFN_vkAllocateMemory vkAllocateMemory;
|
|
extern PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
|
|
extern PFN_vkBindBufferMemory vkBindBufferMemory;
|
|
extern PFN_vkBindImageMemory vkBindImageMemory;
|
|
extern PFN_vkCmdBeginQuery vkCmdBeginQuery;
|
|
extern PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
|
|
extern PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
|
|
extern PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
|
|
extern PFN_vkCmdBindPipeline vkCmdBindPipeline;
|
|
extern PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
|
|
extern PFN_vkCmdBlitImage vkCmdBlitImage;
|
|
extern PFN_vkCmdClearAttachments vkCmdClearAttachments;
|
|
extern PFN_vkCmdClearColorImage vkCmdClearColorImage;
|
|
extern PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
|
|
extern PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
|
|
extern PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
|
|
extern PFN_vkCmdCopyImage vkCmdCopyImage;
|
|
extern PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
|
|
extern PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
|
|
extern PFN_vkCmdDispatch vkCmdDispatch;
|
|
extern PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
|
|
extern PFN_vkCmdDraw vkCmdDraw;
|
|
extern PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
|
|
extern PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
|
|
extern PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
|
|
extern PFN_vkCmdEndQuery vkCmdEndQuery;
|
|
extern PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
|
|
extern PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
|
|
extern PFN_vkCmdFillBuffer vkCmdFillBuffer;
|
|
extern PFN_vkCmdNextSubpass vkCmdNextSubpass;
|
|
extern PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
|
|
extern PFN_vkCmdPushConstants vkCmdPushConstants;
|
|
extern PFN_vkCmdResetEvent vkCmdResetEvent;
|
|
extern PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
|
|
extern PFN_vkCmdResolveImage vkCmdResolveImage;
|
|
extern PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
|
|
extern PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
|
|
extern PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
|
|
extern PFN_vkCmdSetEvent vkCmdSetEvent;
|
|
extern PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
|
|
extern PFN_vkCmdSetScissor vkCmdSetScissor;
|
|
extern PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
|
|
extern PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
|
|
extern PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
|
|
extern PFN_vkCmdSetViewport vkCmdSetViewport;
|
|
extern PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
|
|
extern PFN_vkCmdWaitEvents vkCmdWaitEvents;
|
|
extern PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
|
|
extern PFN_vkCreateBuffer vkCreateBuffer;
|
|
extern PFN_vkCreateBufferView vkCreateBufferView;
|
|
extern PFN_vkCreateCommandPool vkCreateCommandPool;
|
|
extern PFN_vkCreateComputePipelines vkCreateComputePipelines;
|
|
extern PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
|
|
extern PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
|
|
extern PFN_vkCreateDevice vkCreateDevice;
|
|
extern PFN_vkCreateEvent vkCreateEvent;
|
|
extern PFN_vkCreateFence vkCreateFence;
|
|
extern PFN_vkCreateFramebuffer vkCreateFramebuffer;
|
|
extern PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
|
|
extern PFN_vkCreateImage vkCreateImage;
|
|
extern PFN_vkCreateImageView vkCreateImageView;
|
|
extern PFN_vkCreateInstance vkCreateInstance;
|
|
extern PFN_vkCreatePipelineCache vkCreatePipelineCache;
|
|
extern PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
|
|
extern PFN_vkCreateQueryPool vkCreateQueryPool;
|
|
extern PFN_vkCreateRenderPass vkCreateRenderPass;
|
|
extern PFN_vkCreateSampler vkCreateSampler;
|
|
extern PFN_vkCreateSemaphore vkCreateSemaphore;
|
|
extern PFN_vkCreateShaderModule vkCreateShaderModule;
|
|
extern PFN_vkDestroyBuffer vkDestroyBuffer;
|
|
extern PFN_vkDestroyBufferView vkDestroyBufferView;
|
|
extern PFN_vkDestroyCommandPool vkDestroyCommandPool;
|
|
extern PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
|
|
extern PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
|
|
extern PFN_vkDestroyDevice vkDestroyDevice;
|
|
extern PFN_vkDestroyEvent vkDestroyEvent;
|
|
extern PFN_vkDestroyFence vkDestroyFence;
|
|
extern PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
|
|
extern PFN_vkDestroyImage vkDestroyImage;
|
|
extern PFN_vkDestroyImageView vkDestroyImageView;
|
|
extern PFN_vkDestroyInstance vkDestroyInstance;
|
|
extern PFN_vkDestroyPipeline vkDestroyPipeline;
|
|
extern PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
|
|
extern PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
|
|
extern PFN_vkDestroyQueryPool vkDestroyQueryPool;
|
|
extern PFN_vkDestroyRenderPass vkDestroyRenderPass;
|
|
extern PFN_vkDestroySampler vkDestroySampler;
|
|
extern PFN_vkDestroySemaphore vkDestroySemaphore;
|
|
extern PFN_vkDestroyShaderModule vkDestroyShaderModule;
|
|
extern PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
|
|
extern PFN_vkEndCommandBuffer vkEndCommandBuffer;
|
|
extern PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
|
|
extern PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
|
|
extern PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
|
|
extern PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
|
|
extern PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
|
|
extern PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
|
|
extern PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
|
|
extern PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
|
|
extern PFN_vkFreeMemory vkFreeMemory;
|
|
extern PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
|
|
extern PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
|
|
extern PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
|
|
extern PFN_vkGetDeviceQueue vkGetDeviceQueue;
|
|
extern PFN_vkGetEventStatus vkGetEventStatus;
|
|
extern PFN_vkGetFenceStatus vkGetFenceStatus;
|
|
extern PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
|
|
extern PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
|
|
extern PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
|
|
extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
|
|
extern PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
|
|
extern PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
|
|
extern PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
|
|
extern PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
|
|
extern PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
|
|
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
|
|
extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
|
|
extern PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
|
|
extern PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
|
|
extern PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
|
|
extern PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
|
|
extern PFN_vkMapMemory vkMapMemory;
|
|
extern PFN_vkMergePipelineCaches vkMergePipelineCaches;
|
|
extern PFN_vkQueueBindSparse vkQueueBindSparse;
|
|
extern PFN_vkQueueSubmit vkQueueSubmit;
|
|
extern PFN_vkQueueWaitIdle vkQueueWaitIdle;
|
|
extern PFN_vkResetCommandBuffer vkResetCommandBuffer;
|
|
extern PFN_vkResetCommandPool vkResetCommandPool;
|
|
extern PFN_vkResetDescriptorPool vkResetDescriptorPool;
|
|
extern PFN_vkResetEvent vkResetEvent;
|
|
extern PFN_vkResetFences vkResetFences;
|
|
extern PFN_vkSetEvent vkSetEvent;
|
|
extern PFN_vkUnmapMemory vkUnmapMemory;
|
|
extern PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
|
|
extern PFN_vkWaitForFences vkWaitForFences;
|
|
#endif // defined(VK_VERSION_1_0)
|
|
#if defined(VK_VERSION_1_1)
|
|
extern PFN_vkBindBufferMemory2 vkBindBufferMemory2;
|
|
extern PFN_vkBindImageMemory2 vkBindImageMemory2;
|
|
extern PFN_vkCmdDispatchBase vkCmdDispatchBase;
|
|
extern PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
|
|
extern PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
|
|
extern PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
|
|
extern PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
|
|
extern PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
|
|
extern PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
|
|
extern PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
|
|
extern PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
|
|
extern PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
|
|
extern PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
|
|
extern PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
|
|
extern PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
|
|
extern PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
|
|
extern PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
|
|
extern PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
|
|
extern PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
|
|
extern PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
|
|
extern PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
|
|
extern PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
|
|
extern PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
|
|
extern PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
|
|
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
|
|
extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
|
|
extern PFN_vkTrimCommandPool vkTrimCommandPool;
|
|
extern PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
|
|
#endif // defined(VK_VERSION_1_1)
|
|
#if defined(VK_VERSION_1_2)
|
|
extern PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
|
|
extern PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
|
|
extern PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
|
|
extern PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
|
|
extern PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
|
|
extern PFN_vkCreateRenderPass2 vkCreateRenderPass2;
|
|
extern PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
|
|
extern PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
|
|
extern PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
|
|
extern PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
|
|
extern PFN_vkResetQueryPool vkResetQueryPool;
|
|
extern PFN_vkSignalSemaphore vkSignalSemaphore;
|
|
extern PFN_vkWaitSemaphores vkWaitSemaphores;
|
|
#endif // defined(VK_VERSION_1_2)
|
|
#if defined(VK_VERSION_1_3)
|
|
extern PFN_vkCmdBeginRendering vkCmdBeginRendering;
|
|
extern PFN_vkCmdBindVertexBuffers2 vkCmdBindVertexBuffers2;
|
|
extern PFN_vkCmdBlitImage2 vkCmdBlitImage2;
|
|
extern PFN_vkCmdCopyBuffer2 vkCmdCopyBuffer2;
|
|
extern PFN_vkCmdCopyBufferToImage2 vkCmdCopyBufferToImage2;
|
|
extern PFN_vkCmdCopyImage2 vkCmdCopyImage2;
|
|
extern PFN_vkCmdCopyImageToBuffer2 vkCmdCopyImageToBuffer2;
|
|
extern PFN_vkCmdEndRendering vkCmdEndRendering;
|
|
extern PFN_vkCmdPipelineBarrier2 vkCmdPipelineBarrier2;
|
|
extern PFN_vkCmdResetEvent2 vkCmdResetEvent2;
|
|
extern PFN_vkCmdResolveImage2 vkCmdResolveImage2;
|
|
extern PFN_vkCmdSetCullMode vkCmdSetCullMode;
|
|
extern PFN_vkCmdSetDepthBiasEnable vkCmdSetDepthBiasEnable;
|
|
extern PFN_vkCmdSetDepthBoundsTestEnable vkCmdSetDepthBoundsTestEnable;
|
|
extern PFN_vkCmdSetDepthCompareOp vkCmdSetDepthCompareOp;
|
|
extern PFN_vkCmdSetDepthTestEnable vkCmdSetDepthTestEnable;
|
|
extern PFN_vkCmdSetDepthWriteEnable vkCmdSetDepthWriteEnable;
|
|
extern PFN_vkCmdSetEvent2 vkCmdSetEvent2;
|
|
extern PFN_vkCmdSetFrontFace vkCmdSetFrontFace;
|
|
extern PFN_vkCmdSetPrimitiveRestartEnable vkCmdSetPrimitiveRestartEnable;
|
|
extern PFN_vkCmdSetPrimitiveTopology vkCmdSetPrimitiveTopology;
|
|
extern PFN_vkCmdSetRasterizerDiscardEnable vkCmdSetRasterizerDiscardEnable;
|
|
extern PFN_vkCmdSetScissorWithCount vkCmdSetScissorWithCount;
|
|
extern PFN_vkCmdSetStencilOp vkCmdSetStencilOp;
|
|
extern PFN_vkCmdSetStencilTestEnable vkCmdSetStencilTestEnable;
|
|
extern PFN_vkCmdSetViewportWithCount vkCmdSetViewportWithCount;
|
|
extern PFN_vkCmdWaitEvents2 vkCmdWaitEvents2;
|
|
extern PFN_vkCmdWriteTimestamp2 vkCmdWriteTimestamp2;
|
|
extern PFN_vkCreatePrivateDataSlot vkCreatePrivateDataSlot;
|
|
extern PFN_vkDestroyPrivateDataSlot vkDestroyPrivateDataSlot;
|
|
extern PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements;
|
|
extern PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements;
|
|
extern PFN_vkGetDeviceImageSparseMemoryRequirements vkGetDeviceImageSparseMemoryRequirements;
|
|
extern PFN_vkGetPhysicalDeviceToolProperties vkGetPhysicalDeviceToolProperties;
|
|
extern PFN_vkGetPrivateData vkGetPrivateData;
|
|
extern PFN_vkQueueSubmit2 vkQueueSubmit2;
|
|
extern PFN_vkSetPrivateData vkSetPrivateData;
|
|
#endif // defined(VK_VERSION_1_3)
|
|
#if defined(VK_AMD_buffer_marker)
|
|
extern PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
|
|
#endif // defined(VK_AMD_buffer_marker)
|
|
#if defined(VK_AMD_display_native_hdr)
|
|
extern PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
|
|
#endif // defined(VK_AMD_display_native_hdr)
|
|
#if defined(VK_AMD_draw_indirect_count)
|
|
extern PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
|
|
extern PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
|
|
#endif // defined(VK_AMD_draw_indirect_count)
|
|
#if defined(VK_AMD_shader_info)
|
|
extern PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
|
|
#endif // defined(VK_AMD_shader_info)
|
|
#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
|
|
extern PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
|
|
extern PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
|
|
#endif // defined(VK_ANDROID_external_memory_android_hardware_buffer)
|
|
#if defined(VK_ANDROID_native_buffer)
|
|
extern PFN_vkAcquireImageANDROID vkAcquireImageANDROID;
|
|
extern PFN_vkGetSwapchainGrallocUsage2ANDROID vkGetSwapchainGrallocUsage2ANDROID;
|
|
extern PFN_vkGetSwapchainGrallocUsageANDROID vkGetSwapchainGrallocUsageANDROID;
|
|
extern PFN_vkQueueSignalReleaseImageANDROID vkQueueSignalReleaseImageANDROID;
|
|
#endif // defined(VK_ANDROID_native_buffer)
|
|
#if defined(VK_EXT_acquire_drm_display)
|
|
extern PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT;
|
|
extern PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT;
|
|
#endif // defined(VK_EXT_acquire_drm_display)
|
|
#if defined(VK_EXT_acquire_xlib_display)
|
|
extern PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT;
|
|
extern PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT;
|
|
#endif // defined(VK_EXT_acquire_xlib_display)
|
|
#if defined(VK_EXT_buffer_device_address)
|
|
extern PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
|
|
#endif // defined(VK_EXT_buffer_device_address)
|
|
#if defined(VK_EXT_calibrated_timestamps)
|
|
extern PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
|
|
extern PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT;
|
|
#endif // defined(VK_EXT_calibrated_timestamps)
|
|
#if defined(VK_EXT_color_write_enable)
|
|
extern PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT;
|
|
#endif // defined(VK_EXT_color_write_enable)
|
|
#if defined(VK_EXT_conditional_rendering)
|
|
extern PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
|
|
extern PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
|
|
#endif // defined(VK_EXT_conditional_rendering)
|
|
#if defined(VK_EXT_debug_marker)
|
|
extern PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
|
|
extern PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
|
|
extern PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
|
|
extern PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
|
|
extern PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
|
|
#endif // defined(VK_EXT_debug_marker)
|
|
#if defined(VK_EXT_debug_report)
|
|
extern PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT;
|
|
extern PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT;
|
|
extern PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT;
|
|
#endif // defined(VK_EXT_debug_report)
|
|
#if defined(VK_EXT_debug_utils)
|
|
extern PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT;
|
|
extern PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT;
|
|
extern PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT;
|
|
extern PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT;
|
|
extern PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT;
|
|
extern PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT;
|
|
extern PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT;
|
|
extern PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT;
|
|
extern PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT;
|
|
extern PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT;
|
|
extern PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT;
|
|
#endif // defined(VK_EXT_debug_utils)
|
|
#if defined(VK_EXT_direct_mode_display)
|
|
extern PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT;
|
|
#endif // defined(VK_EXT_direct_mode_display)
|
|
#if defined(VK_EXT_directfb_surface)
|
|
extern PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT;
|
|
extern PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT;
|
|
#endif // defined(VK_EXT_directfb_surface)
|
|
#if defined(VK_EXT_discard_rectangles)
|
|
extern PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
|
|
#endif // defined(VK_EXT_discard_rectangles)
|
|
#if defined(VK_EXT_display_control)
|
|
extern PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
|
|
extern PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
|
|
extern PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
|
|
extern PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
|
|
#endif // defined(VK_EXT_display_control)
|
|
#if defined(VK_EXT_display_surface_counter)
|
|
extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT;
|
|
#endif // defined(VK_EXT_display_surface_counter)
|
|
#if defined(VK_EXT_extended_dynamic_state)
|
|
extern PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
|
|
extern PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
|
|
extern PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
|
|
extern PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
|
|
extern PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
|
|
extern PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
|
|
extern PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
|
|
extern PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
|
|
extern PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT;
|
|
extern PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
|
|
extern PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
|
|
extern PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT;
|
|
#endif // defined(VK_EXT_extended_dynamic_state)
|
|
#if defined(VK_EXT_extended_dynamic_state2)
|
|
extern PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
|
|
extern PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT;
|
|
extern PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
|
|
extern PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT;
|
|
extern PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
|
|
#endif // defined(VK_EXT_extended_dynamic_state2)
|
|
#if defined(VK_EXT_external_memory_host)
|
|
extern PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
|
|
#endif // defined(VK_EXT_external_memory_host)
|
|
#if defined(VK_EXT_full_screen_exclusive)
|
|
extern PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
|
|
extern PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT;
|
|
extern PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
|
|
#endif // defined(VK_EXT_full_screen_exclusive)
|
|
#if defined(VK_EXT_hdr_metadata)
|
|
extern PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
|
|
#endif // defined(VK_EXT_hdr_metadata)
|
|
#if defined(VK_EXT_headless_surface)
|
|
extern PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT;
|
|
#endif // defined(VK_EXT_headless_surface)
|
|
#if defined(VK_EXT_host_query_reset)
|
|
extern PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
|
|
#endif // defined(VK_EXT_host_query_reset)
|
|
#if defined(VK_EXT_image_compression_control)
|
|
extern PFN_vkGetImageSubresourceLayout2EXT vkGetImageSubresourceLayout2EXT;
|
|
#endif // defined(VK_EXT_image_compression_control)
|
|
#if defined(VK_EXT_image_drm_format_modifier)
|
|
extern PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
|
|
#endif // defined(VK_EXT_image_drm_format_modifier)
|
|
#if defined(VK_EXT_line_rasterization)
|
|
extern PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
|
|
#endif // defined(VK_EXT_line_rasterization)
|
|
#if defined(VK_EXT_metal_objects)
|
|
extern PFN_vkExportMetalObjectsEXT vkExportMetalObjectsEXT;
|
|
#endif // defined(VK_EXT_metal_objects)
|
|
#if defined(VK_EXT_metal_surface)
|
|
extern PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT;
|
|
#endif // defined(VK_EXT_metal_surface)
|
|
#if defined(VK_EXT_multi_draw)
|
|
extern PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT;
|
|
extern PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT;
|
|
#endif // defined(VK_EXT_multi_draw)
|
|
#if defined(VK_EXT_pageable_device_local_memory)
|
|
extern PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT;
|
|
#endif // defined(VK_EXT_pageable_device_local_memory)
|
|
#if defined(VK_EXT_pipeline_properties)
|
|
extern PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT;
|
|
#endif // defined(VK_EXT_pipeline_properties)
|
|
#if defined(VK_EXT_private_data)
|
|
extern PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT;
|
|
extern PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT;
|
|
extern PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT;
|
|
extern PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT;
|
|
#endif // defined(VK_EXT_private_data)
|
|
#if defined(VK_EXT_sample_locations)
|
|
extern PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
|
|
extern PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT;
|
|
#endif // defined(VK_EXT_sample_locations)
|
|
#if defined(VK_EXT_tooling_info)
|
|
extern PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT;
|
|
#endif // defined(VK_EXT_tooling_info)
|
|
#if defined(VK_EXT_transform_feedback)
|
|
extern PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
|
|
extern PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
|
|
extern PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
|
|
extern PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
|
|
extern PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
|
|
extern PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
|
|
#endif // defined(VK_EXT_transform_feedback)
|
|
#if defined(VK_EXT_validation_cache)
|
|
extern PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
|
|
extern PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
|
|
extern PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
|
|
extern PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
|
|
#endif // defined(VK_EXT_validation_cache)
|
|
#if defined(VK_EXT_vertex_input_dynamic_state)
|
|
extern PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT;
|
|
#endif // defined(VK_EXT_vertex_input_dynamic_state)
|
|
#if defined(VK_FUCHSIA_buffer_collection)
|
|
extern PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA;
|
|
extern PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA;
|
|
extern PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA;
|
|
extern PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA;
|
|
extern PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA;
|
|
#endif // defined(VK_FUCHSIA_buffer_collection)
|
|
#if defined(VK_FUCHSIA_external_memory)
|
|
extern PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA;
|
|
extern PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA;
|
|
#endif // defined(VK_FUCHSIA_external_memory)
|
|
#if defined(VK_FUCHSIA_external_semaphore)
|
|
extern PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA;
|
|
extern PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA;
|
|
#endif // defined(VK_FUCHSIA_external_semaphore)
|
|
#if defined(VK_FUCHSIA_imagepipe_surface)
|
|
extern PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA;
|
|
#endif // defined(VK_FUCHSIA_imagepipe_surface)
|
|
#if defined(VK_GGP_stream_descriptor_surface)
|
|
extern PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP;
|
|
#endif // defined(VK_GGP_stream_descriptor_surface)
|
|
#if defined(VK_GOOGLE_display_timing)
|
|
extern PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
|
|
extern PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
|
|
#endif // defined(VK_GOOGLE_display_timing)
|
|
#if defined(VK_HUAWEI_invocation_mask)
|
|
extern PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI;
|
|
#endif // defined(VK_HUAWEI_invocation_mask)
|
|
#if defined(VK_HUAWEI_subpass_shading)
|
|
extern PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
|
|
extern PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
|
|
#endif // defined(VK_HUAWEI_subpass_shading)
|
|
#if defined(VK_INTEL_performance_query)
|
|
extern PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
|
|
extern PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
|
|
extern PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
|
|
extern PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
|
|
extern PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
|
|
extern PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
|
|
extern PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
|
|
extern PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
|
|
extern PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
|
|
#endif // defined(VK_INTEL_performance_query)
|
|
#if defined(VK_KHR_acceleration_structure)
|
|
extern PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR;
|
|
extern PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR;
|
|
extern PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR;
|
|
extern PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
|
|
extern PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
|
|
extern PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
|
|
extern PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR;
|
|
extern PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
|
|
extern PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
|
|
extern PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
|
|
extern PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
|
|
extern PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR;
|
|
extern PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR;
|
|
extern PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
|
|
extern PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
|
|
extern PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
|
|
#endif // defined(VK_KHR_acceleration_structure)
|
|
#if defined(VK_KHR_android_surface)
|
|
extern PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
|
|
#endif // defined(VK_KHR_android_surface)
|
|
#if defined(VK_KHR_bind_memory2)
|
|
extern PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
|
|
extern PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
|
|
#endif // defined(VK_KHR_bind_memory2)
|
|
#if defined(VK_KHR_buffer_device_address)
|
|
extern PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
|
|
extern PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
|
|
extern PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
|
|
#endif // defined(VK_KHR_buffer_device_address)
|
|
#if defined(VK_KHR_copy_commands2)
|
|
extern PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR;
|
|
extern PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR;
|
|
extern PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR;
|
|
extern PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR;
|
|
extern PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR;
|
|
extern PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR;
|
|
#endif // defined(VK_KHR_copy_commands2)
|
|
#if defined(VK_KHR_create_renderpass2)
|
|
extern PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
|
|
extern PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
|
|
extern PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
|
|
extern PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
|
|
#endif // defined(VK_KHR_create_renderpass2)
|
|
#if defined(VK_KHR_deferred_host_operations)
|
|
extern PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
|
|
extern PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
|
|
extern PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
|
|
extern PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
|
|
extern PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
|
|
#endif // defined(VK_KHR_deferred_host_operations)
|
|
#if defined(VK_KHR_descriptor_update_template)
|
|
extern PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
|
|
extern PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
|
|
extern PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
|
|
#endif // defined(VK_KHR_descriptor_update_template)
|
|
#if defined(VK_KHR_device_group)
|
|
extern PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
|
|
extern PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
|
|
extern PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
|
|
#endif // defined(VK_KHR_device_group)
|
|
#if defined(VK_KHR_device_group_creation)
|
|
extern PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
|
|
#endif // defined(VK_KHR_device_group_creation)
|
|
#if defined(VK_KHR_display)
|
|
extern PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
|
|
extern PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
|
|
extern PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
|
|
extern PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
|
|
extern PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
|
|
extern PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
|
|
extern PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
|
|
#endif // defined(VK_KHR_display)
|
|
#if defined(VK_KHR_display_swapchain)
|
|
extern PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
|
|
#endif // defined(VK_KHR_display_swapchain)
|
|
#if defined(VK_KHR_draw_indirect_count)
|
|
extern PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
|
|
extern PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
|
|
#endif // defined(VK_KHR_draw_indirect_count)
|
|
#if defined(VK_KHR_dynamic_rendering)
|
|
extern PFN_vkCmdBeginRenderingKHR vkCmdBeginRenderingKHR;
|
|
extern PFN_vkCmdEndRenderingKHR vkCmdEndRenderingKHR;
|
|
#endif // defined(VK_KHR_dynamic_rendering)
|
|
#if defined(VK_KHR_external_fence_capabilities)
|
|
extern PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
|
|
#endif // defined(VK_KHR_external_fence_capabilities)
|
|
#if defined(VK_KHR_external_fence_fd)
|
|
extern PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
|
|
extern PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
|
|
#endif // defined(VK_KHR_external_fence_fd)
|
|
#if defined(VK_KHR_external_fence_win32)
|
|
extern PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
|
|
extern PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
|
|
#endif // defined(VK_KHR_external_fence_win32)
|
|
#if defined(VK_KHR_external_memory_capabilities)
|
|
extern PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
|
|
#endif // defined(VK_KHR_external_memory_capabilities)
|
|
#if defined(VK_KHR_external_memory_fd)
|
|
extern PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
|
|
extern PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
|
|
#endif // defined(VK_KHR_external_memory_fd)
|
|
#if defined(VK_KHR_external_memory_win32)
|
|
extern PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
|
|
extern PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
|
|
#endif // defined(VK_KHR_external_memory_win32)
|
|
#if defined(VK_KHR_external_semaphore_capabilities)
|
|
extern PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
|
|
#endif // defined(VK_KHR_external_semaphore_capabilities)
|
|
#if defined(VK_KHR_external_semaphore_fd)
|
|
extern PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
|
|
extern PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
|
|
#endif // defined(VK_KHR_external_semaphore_fd)
|
|
#if defined(VK_KHR_external_semaphore_win32)
|
|
extern PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
|
|
extern PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
|
|
#endif // defined(VK_KHR_external_semaphore_win32)
|
|
#if defined(VK_KHR_fragment_shading_rate)
|
|
extern PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR;
|
|
extern PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR;
|
|
#endif // defined(VK_KHR_fragment_shading_rate)
|
|
#if defined(VK_KHR_get_display_properties2)
|
|
extern PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
|
|
extern PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
|
|
extern PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
|
|
extern PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
|
|
#endif // defined(VK_KHR_get_display_properties2)
|
|
#if defined(VK_KHR_get_memory_requirements2)
|
|
extern PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
|
|
extern PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
|
|
extern PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
|
|
#endif // defined(VK_KHR_get_memory_requirements2)
|
|
#if defined(VK_KHR_get_physical_device_properties2)
|
|
extern PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
|
|
extern PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
|
|
extern PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
|
|
extern PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
|
|
extern PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
|
|
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
|
|
extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
|
|
#endif // defined(VK_KHR_get_physical_device_properties2)
|
|
#if defined(VK_KHR_get_surface_capabilities2)
|
|
extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
|
|
extern PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
|
|
#endif // defined(VK_KHR_get_surface_capabilities2)
|
|
#if defined(VK_KHR_maintenance1)
|
|
extern PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
|
|
#endif // defined(VK_KHR_maintenance1)
|
|
#if defined(VK_KHR_maintenance3)
|
|
extern PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
|
|
#endif // defined(VK_KHR_maintenance3)
|
|
#if defined(VK_KHR_maintenance4)
|
|
extern PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR;
|
|
extern PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR;
|
|
extern PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR;
|
|
#endif // defined(VK_KHR_maintenance4)
|
|
#if defined(VK_KHR_performance_query)
|
|
extern PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
|
|
extern PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
|
|
extern PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
|
|
extern PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
|
|
#endif // defined(VK_KHR_performance_query)
|
|
#if defined(VK_KHR_pipeline_executable_properties)
|
|
extern PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
|
|
extern PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
|
|
extern PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
|
|
#endif // defined(VK_KHR_pipeline_executable_properties)
|
|
#if defined(VK_KHR_present_wait)
|
|
extern PFN_vkWaitForPresentKHR vkWaitForPresentKHR;
|
|
#endif // defined(VK_KHR_present_wait)
|
|
#if defined(VK_KHR_push_descriptor)
|
|
extern PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
|
|
#endif // defined(VK_KHR_push_descriptor)
|
|
#if (defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline))
|
|
extern PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR;
|
|
#endif // (defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline))
|
|
#if defined(VK_KHR_ray_tracing_pipeline)
|
|
extern PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
|
|
extern PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
|
|
extern PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
|
|
extern PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
|
|
extern PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
|
|
extern PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR;
|
|
extern PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
|
|
#endif // defined(VK_KHR_ray_tracing_pipeline)
|
|
#if defined(VK_KHR_sampler_ycbcr_conversion)
|
|
extern PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
|
|
extern PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
|
|
#endif // defined(VK_KHR_sampler_ycbcr_conversion)
|
|
#if defined(VK_KHR_shared_presentable_image)
|
|
extern PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
|
|
#endif // defined(VK_KHR_shared_presentable_image)
|
|
#if defined(VK_KHR_surface)
|
|
extern PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
|
|
extern PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
|
|
extern PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
|
|
extern PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
|
|
extern PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
|
|
#endif // defined(VK_KHR_surface)
|
|
#if defined(VK_KHR_swapchain)
|
|
extern PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
|
|
extern PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
|
|
extern PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
|
|
extern PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
|
|
extern PFN_vkQueuePresentKHR vkQueuePresentKHR;
|
|
#endif // defined(VK_KHR_swapchain)
|
|
#if defined(VK_KHR_synchronization2)
|
|
extern PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR;
|
|
extern PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR;
|
|
extern PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR;
|
|
extern PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR;
|
|
extern PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR;
|
|
extern PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR;
|
|
#endif // defined(VK_KHR_synchronization2)
|
|
#if (defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker))
|
|
extern PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD;
|
|
#endif // (defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker))
|
|
#if (defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints))
|
|
extern PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV;
|
|
#endif // (defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints))
|
|
#if defined(VK_KHR_timeline_semaphore)
|
|
extern PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
|
|
extern PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
|
|
extern PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
|
|
#endif // defined(VK_KHR_timeline_semaphore)
|
|
#if defined(VK_KHR_video_decode_queue)
|
|
extern PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR;
|
|
#endif // defined(VK_KHR_video_decode_queue)
|
|
#if defined(VK_KHR_video_encode_queue)
|
|
extern PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR;
|
|
#endif // defined(VK_KHR_video_encode_queue)
|
|
#if defined(VK_KHR_video_queue)
|
|
extern PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR;
|
|
extern PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR;
|
|
extern PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR;
|
|
extern PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR;
|
|
extern PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR;
|
|
extern PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR;
|
|
extern PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR;
|
|
extern PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR;
|
|
extern PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR;
|
|
extern PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR;
|
|
extern PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR;
|
|
extern PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR;
|
|
#endif // defined(VK_KHR_video_queue)
|
|
#if defined(VK_KHR_wayland_surface)
|
|
extern PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
|
|
extern PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
|
|
#endif // defined(VK_KHR_wayland_surface)
|
|
#if defined(VK_KHR_win32_surface)
|
|
extern PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
|
|
extern PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
|
|
#endif // defined(VK_KHR_win32_surface)
|
|
#if defined(VK_KHR_xcb_surface)
|
|
extern PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
|
|
extern PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
|
|
#endif // defined(VK_KHR_xcb_surface)
|
|
#if defined(VK_KHR_xlib_surface)
|
|
extern PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
|
|
extern PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
|
|
#endif // defined(VK_KHR_xlib_surface)
|
|
#if defined(VK_MVK_ios_surface)
|
|
extern PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK;
|
|
#endif // defined(VK_MVK_ios_surface)
|
|
#if defined(VK_MVK_macos_surface)
|
|
extern PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK;
|
|
#endif // defined(VK_MVK_macos_surface)
|
|
#if defined(VK_NN_vi_surface)
|
|
extern PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN;
|
|
#endif // defined(VK_NN_vi_surface)
|
|
#if defined(VK_NVX_binary_import)
|
|
extern PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX;
|
|
extern PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX;
|
|
extern PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX;
|
|
extern PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX;
|
|
extern PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX;
|
|
#endif // defined(VK_NVX_binary_import)
|
|
#if defined(VK_NVX_image_view_handle)
|
|
extern PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX;
|
|
extern PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
|
|
#endif // defined(VK_NVX_image_view_handle)
|
|
#if defined(VK_NV_acquire_winrt_display)
|
|
extern PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV;
|
|
extern PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV;
|
|
#endif // defined(VK_NV_acquire_winrt_display)
|
|
#if defined(VK_NV_clip_space_w_scaling)
|
|
extern PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
|
|
#endif // defined(VK_NV_clip_space_w_scaling)
|
|
#if defined(VK_NV_cooperative_matrix)
|
|
extern PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV;
|
|
#endif // defined(VK_NV_cooperative_matrix)
|
|
#if defined(VK_NV_coverage_reduction_mode)
|
|
extern PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
|
|
#endif // defined(VK_NV_coverage_reduction_mode)
|
|
#if defined(VK_NV_device_diagnostic_checkpoints)
|
|
extern PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
|
|
extern PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
|
|
#endif // defined(VK_NV_device_diagnostic_checkpoints)
|
|
#if defined(VK_NV_device_generated_commands)
|
|
extern PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV;
|
|
extern PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV;
|
|
extern PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV;
|
|
extern PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV;
|
|
extern PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV;
|
|
extern PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV;
|
|
#endif // defined(VK_NV_device_generated_commands)
|
|
#if defined(VK_NV_external_memory_capabilities)
|
|
extern PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV;
|
|
#endif // defined(VK_NV_external_memory_capabilities)
|
|
#if defined(VK_NV_external_memory_rdma)
|
|
extern PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV;
|
|
#endif // defined(VK_NV_external_memory_rdma)
|
|
#if defined(VK_NV_external_memory_win32)
|
|
extern PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
|
|
#endif // defined(VK_NV_external_memory_win32)
|
|
#if defined(VK_NV_fragment_shading_rate_enums)
|
|
extern PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV;
|
|
#endif // defined(VK_NV_fragment_shading_rate_enums)
|
|
#if defined(VK_NV_mesh_shader)
|
|
extern PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
|
|
extern PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
|
|
extern PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
|
|
#endif // defined(VK_NV_mesh_shader)
|
|
#if defined(VK_NV_ray_tracing)
|
|
extern PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
|
|
extern PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
|
|
extern PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
|
|
extern PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
|
|
extern PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
|
|
extern PFN_vkCompileDeferredNV vkCompileDeferredNV;
|
|
extern PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
|
|
extern PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
|
|
extern PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
|
|
extern PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
|
|
extern PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
|
|
extern PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
|
|
#endif // defined(VK_NV_ray_tracing)
|
|
#if defined(VK_NV_scissor_exclusive)
|
|
extern PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
|
|
#endif // defined(VK_NV_scissor_exclusive)
|
|
#if defined(VK_NV_shading_rate_image)
|
|
extern PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
|
|
extern PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
|
|
extern PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
|
|
#endif // defined(VK_NV_shading_rate_image)
|
|
#if defined(VK_QNX_screen_surface)
|
|
extern PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX;
|
|
extern PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX;
|
|
#endif // defined(VK_QNX_screen_surface)
|
|
#if defined(VK_VALVE_descriptor_set_host_mapping)
|
|
extern PFN_vkGetDescriptorSetHostMappingVALVE vkGetDescriptorSetHostMappingVALVE;
|
|
extern PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE vkGetDescriptorSetLayoutHostMappingInfoVALVE;
|
|
#endif // defined(VK_VALVE_descriptor_set_host_mapping)
|
|
#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
|
|
extern PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
|
|
#endif // (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
|
|
#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
|
|
extern PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
|
|
#endif // (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
|
|
#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
|
|
extern PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
|
|
extern PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
|
|
extern PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
|
|
#endif // (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
|
|
#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
|
|
extern PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
|
|
#endif // (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
|
|
|
|
} // namespace bluevk
|
|
|
|
#if !defined(NDEBUG)
|
|
#include <utils/Log.h>
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkImageLayout& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAttachmentLoadOp& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAttachmentStoreOp& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkImageType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkImageTiling& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkImageViewType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkCommandBufferLevel& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkComponentSwizzle& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDescriptorType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkQueryType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkBorderColor& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPipelineBindPoint& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPipelineCacheHeaderVersion& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPrimitiveTopology& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSharingMode& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkIndexType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkFilter& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSamplerMipmapMode& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSamplerAddressMode& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkCompareOp& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPolygonMode& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkFrontFace& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkBlendFactor& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkBlendOp& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkStencilOp& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkLogicOp& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkInternalAllocationType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSystemAllocationScope& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPhysicalDeviceType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkVertexInputRate& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkFormat& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkStructureType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSubpassContents& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkResult& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDynamicState& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDescriptorUpdateTemplateType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkObjectType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSemaphoreType& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPresentModeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkColorSpaceKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkTimeDomainEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDebugReportObjectTypeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDeviceMemoryReportEventTypeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkRasterizationOrderAMD& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkValidationCheckEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkValidationFeatureEnableEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkValidationFeatureDisableEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkIndirectCommandsTokenTypeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDisplayPowerStateEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDeviceEventTypeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDisplayEventTypeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkViewportCoordinateSwizzleNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDiscardRectangleModeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPointClippingBehavior& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSamplerReductionMode& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkTessellationDomainOrigin& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSamplerYcbcrModelConversion& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSamplerYcbcrRange& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkChromaLocation& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkBlendOverlapEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkCoverageModulationModeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkCoverageReductionModeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkValidationCacheHeaderVersionEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkShaderInfoTypeAMD& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkQueueGlobalPriorityKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkConservativeRasterizationModeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkVendorId& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkDriverId& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkShadingRatePaletteEntryNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkCoarseSampleOrderTypeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkCopyAccelerationStructureModeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkBuildAccelerationStructureModeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAccelerationStructureTypeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkGeometryTypeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAccelerationStructureMemoryRequirementsTypeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAccelerationStructureBuildTypeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkRayTracingShaderGroupTypeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAccelerationStructureCompatibilityKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkShaderGroupShaderKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkMemoryOverallocationBehaviorAMD& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkScopeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkComponentTypeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceCounterScopeKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceCounterUnitKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceCounterStorageKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceConfigurationTypeINTEL& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkQueryPoolSamplingModeINTEL& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceOverrideTypeINTEL& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceParameterTypeINTEL& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPerformanceValueTypeINTEL& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkShaderFloatControlsIndependence& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkPipelineExecutableStatisticFormatKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkLineRasterizationModeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkFragmentShadingRateCombinerOpKHR& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkFragmentShadingRateNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkFragmentShadingRateTypeNV& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkSubpassMergeStatusEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkProvokingVertexModeEXT& value);
|
|
utils::io::ostream& operator<<(utils::io::ostream& out, const VkAccelerationStructureMotionInstanceTypeNV& value);
|
|
#endif
|
|
|
|
#endif // TNT_FILAMENT_BLUEVK_H
|