mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-13 16:37:30 +00:00
8ee06d75a9
This paves the way for clean initialization of the Vulkan renderer, and very much cleans up the older renderer initialization code as gl and sw are no longer intertwined.
69 lines
2.4 KiB
C
69 lines
2.4 KiB
C
#ifndef EXPORTED_VULKAN_FUNCTION
|
|
#define EXPORTED_VULKAN_FUNCTION(function)
|
|
#endif
|
|
|
|
EXPORTED_VULKAN_FUNCTION (vkGetInstanceProcAddr)
|
|
|
|
#undef EXPORTED_VULKAN_FUNCTION
|
|
|
|
#ifndef GLOBAL_LEVEL_VULKAN_FUNCTION
|
|
#define GLOBAL_LEVEL_VULKAN_FUNCTION(function)
|
|
#endif
|
|
|
|
GLOBAL_LEVEL_VULKAN_FUNCTION (vkEnumerateInstanceVersion)
|
|
GLOBAL_LEVEL_VULKAN_FUNCTION (vkEnumerateInstanceExtensionProperties)
|
|
GLOBAL_LEVEL_VULKAN_FUNCTION (vkEnumerateInstanceLayerProperties)
|
|
GLOBAL_LEVEL_VULKAN_FUNCTION (vkCreateInstance)
|
|
|
|
#undef GLOBAL_LEVEL_VULKAN_FUNCTION
|
|
|
|
#ifndef INSTANCE_LEVEL_VULKAN_FUNCTION
|
|
#define INSTANCE_LEVEL_VULKAN_FUNCTION(function)
|
|
#endif
|
|
|
|
#if defined(VK_USE_PLATFORM_XLIB_KHR)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceXlibPresentationSupportKHR)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkCreateXlibSurfaceKHR)
|
|
#elif defined(VK_USE_PLATFORM_WIN32_KHR)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceWin32PresentationSupportKHR)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkCreateWin32SurfaceKHR)
|
|
#elif defined(VK_USE_PLATFORM_XCB_KHR)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceXcbPresentationSupportKHR)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkCreateXcbSurfaceKHR)
|
|
#else
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkEnumeratePhysicalDevices)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceProperties)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceFeatures)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceQueueFamilyProperties)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkCreateDevice)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetDeviceProcAddr)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkDestroyInstance)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkEnumerateDeviceLayerProperties)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkEnumerateDeviceExtensionProperties)
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION (vkGetPhysicalDeviceMemoryProperties)
|
|
#endif
|
|
|
|
#undef INSTANCE_LEVEL_VULKAN_FUNCTION
|
|
|
|
#ifndef INSTANCE_LEVEL_VULKAN_FUNCTION_EXTENSION
|
|
#define INSTANCE_LEVEL_VULKAN_FUNCTION_EXTENSION(function)
|
|
#endif
|
|
|
|
INSTANCE_LEVEL_VULKAN_FUNCTION_EXTENSION (vkCreateDebugUtilsMessengerEXT)
|
|
|
|
#undef INSTANCE_LEVEL_VULKAN_FUNCTION_EXTENSION
|
|
|
|
#ifndef DEVICE_LEVEL_VULKAN_FUNCTION
|
|
#define DEVICE_LEVEL_VULKAN_FUNCTION(function)
|
|
#endif
|
|
|
|
DEVICE_LEVEL_VULKAN_FUNCTION (vkDestroyDevice)
|
|
DEVICE_LEVEL_VULKAN_FUNCTION (vkGetDeviceQueue)
|
|
|
|
#undef DEVICE_LEVEL_VULKAN_FUNCTION
|
|
|
|
#ifndef DEVICE_LEVEL_VULKAN_FUNCTION_EXTENSION
|
|
#define DEVICE_LEVEL_VULKAN_FUNCTION_EXTENSION(function)
|
|
#endif
|
|
|
|
#undef DEVICE_LEVEL_VULKAN_FUNCTION_EXTENSION
|