From 5b87100b8ca9953832086f392ee60e1421654b3b Mon Sep 17 00:00:00 2001 From: Quentin LADEVIE Date: Thu, 17 Feb 2022 18:29:40 +0100 Subject: Select a physical based on supported vulkan features --- include/vk-context.hpp | 8 ++++++++ include/vulkan-loader.hpp | 2 ++ 2 files changed, 10 insertions(+) (limited to 'include') diff --git a/include/vk-context.hpp b/include/vk-context.hpp index 405cd83..7b7f6bf 100644 --- a/include/vk-context.hpp +++ b/include/vk-context.hpp @@ -1,6 +1,8 @@ #ifndef __VK_CONTEXT_HPP_ #define __VK_CONTEXT_HPP_ +#include + #include "vulkan-loader.hpp" #include "thirdparty/vk_mem_alloc.h" @@ -33,6 +35,12 @@ class vkcontext { void select_queue(); + void check_available_instance_layers(std::vector& needed_layers); + + void check_available_instance_extensions(std::vector& available_layers, std::vector& needed_extensions); + + bool support_required_features(VkPhysicalDevice physical_device); + VkDebugUtilsMessengerEXT debugMessenger; }; diff --git a/include/vulkan-loader.hpp b/include/vulkan-loader.hpp index 6bdf54f..16df7a6 100644 --- a/include/vulkan-loader.hpp +++ b/include/vulkan-loader.hpp @@ -49,7 +49,9 @@ X(vkDestroyInstance) \ X(vkEnumeratePhysicalDevices) \ X(vkGetPhysicalDeviceProperties) \ + X(vkGetPhysicalDeviceProperties2) \ X(vkGetPhysicalDeviceFeatures) \ + X(vkGetPhysicalDeviceFeatures2) \ X(vkGetPhysicalDeviceQueueFamilyProperties) \ X(vkGetPhysicalDeviceMemoryProperties) \ X(vkCreateDevice) \ -- cgit v1.3