Vulkan: Move device-level extension to Vk::Device
Former-commit-id: a73c8cd9744517baea7a5fbd440ccb4d90e9bfc7
This commit is contained in:
parent
81e2c3817a
commit
da3682149c
|
|
@ -40,10 +40,28 @@ namespace Nz
|
|||
// Vulkan functions
|
||||
#define NAZARA_VULKAN_DEVICE_FUNCTION(func) PFN_##func func
|
||||
|
||||
// Vulkan core
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkDestroyDevice);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkDeviceWaitIdle);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkGetDeviceQueue);
|
||||
|
||||
// VK_KHR_display_swapchain
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkCreateSharedSwapchainsKHR);
|
||||
|
||||
// VK_KHR_surface
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkDestroySurfaceKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkGetPhysicalDeviceSurfaceCapabilitiesKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkGetPhysicalDeviceSurfaceFormatsKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR);
|
||||
|
||||
// VK_KHR_swapchain
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkAcquireNextImageKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkCreateSwapchainKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkDestroySwapchainKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkGetSwapchainImagesKHR);
|
||||
NAZARA_VULKAN_DEVICE_FUNCTION(vkQueuePresentKHR);
|
||||
|
||||
#undef NAZARA_VULKAN_DEVICE_FUNCTION
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -75,9 +75,6 @@ namespace Nz
|
|||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceDisplayPlanePropertiesKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceDisplayPropertiesKHR);
|
||||
|
||||
// VK_KHR_display_swapchain
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkCreateSharedSwapchainsKHR);
|
||||
|
||||
// VK_KHR_surface
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkDestroySurfaceKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfaceCapabilitiesKHR);
|
||||
|
|
@ -85,13 +82,6 @@ namespace Nz
|
|||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR);
|
||||
|
||||
// VK_KHR_swapchain
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkAcquireNextImageKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkCreateSwapchainKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkDestroySwapchainKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkGetSwapchainImagesKHR);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkQueuePresentKHR);
|
||||
|
||||
// VK_EXT_debug_report
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkCreateDebugReportCallbackEXT);
|
||||
NAZARA_VULKAN_INSTANCE_FUNCTION(vkDestroyDebugReportCallbackEXT);
|
||||
|
|
|
|||
|
|
@ -35,6 +35,20 @@ namespace Nz
|
|||
NAZARA_VULKAN_LOAD_DEVICE(vkDestroyDevice);
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkDeviceWaitIdle);
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkGetDeviceQueue);
|
||||
|
||||
// VK_KHR_display_swapchain
|
||||
if (m_instance.IsExtensionLoaded("VK_KHR_display_swapchain"))
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkCreateSharedSwapchainsKHR);
|
||||
|
||||
// VK_KHR_swapchain
|
||||
if (m_instance.IsExtensionLoaded("VK_KHR_swapchain"))
|
||||
{
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkAcquireNextImageKHR);
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkCreateSwapchainKHR);
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkDestroySwapchainKHR);
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkGetSwapchainImagesKHR);
|
||||
NAZARA_VULKAN_LOAD_DEVICE(vkQueuePresentKHR);
|
||||
}
|
||||
}
|
||||
catch (const std::exception& e)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -64,10 +64,6 @@ namespace Nz
|
|||
NAZARA_VULKAN_LOAD_INSTANCE(vkGetPhysicalDeviceDisplayPropertiesKHR);
|
||||
}
|
||||
|
||||
// VK_KHR_display_swapchain
|
||||
if (IsExtensionLoaded("VK_KHR_display_swapchain"))
|
||||
NAZARA_VULKAN_LOAD_INSTANCE(vkCreateSharedSwapchainsKHR);
|
||||
|
||||
// VK_KHR_surface
|
||||
if (IsExtensionLoaded("VK_KHR_display"))
|
||||
{
|
||||
|
|
@ -78,16 +74,6 @@ namespace Nz
|
|||
NAZARA_VULKAN_LOAD_INSTANCE(vkGetPhysicalDeviceSurfaceSupportKHR);
|
||||
}
|
||||
|
||||
// VK_KHR_swapchain
|
||||
if (IsExtensionLoaded("VK_KHR_swapchain"))
|
||||
{
|
||||
NAZARA_VULKAN_LOAD_INSTANCE(vkAcquireNextImageKHR);
|
||||
NAZARA_VULKAN_LOAD_INSTANCE(vkCreateSwapchainKHR);
|
||||
NAZARA_VULKAN_LOAD_INSTANCE(vkDestroySwapchainKHR);
|
||||
NAZARA_VULKAN_LOAD_INSTANCE(vkGetSwapchainImagesKHR);
|
||||
NAZARA_VULKAN_LOAD_INSTANCE(vkQueuePresentKHR);
|
||||
}
|
||||
|
||||
// VK_EXT_debug_report
|
||||
if (IsExtensionLoaded("VK_EXT_debug_report"))
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue