diff options
Diffstat (limited to 'api-test/vk-device.cpp')
| -rw-r--r-- | api-test/vk-device.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/api-test/vk-device.cpp b/api-test/vk-device.cpp index 71f4618..1e7b385 100644 --- a/api-test/vk-device.cpp +++ b/api-test/vk-device.cpp @@ -977,6 +977,23 @@ void vkdevice::pick_physical_device() { } bool vkdevice::device_support_features(VkPhysicalDevice physical_dev) { + // limits + { + VkPhysicalDeviceProperties2 props{ + .sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2, + .pNext = nullptr, + }; + vkGetPhysicalDeviceProperties2(physical_dev, &props); + + VkPhysicalDeviceLimits* limits = &props.properties.limits; + if (limits->maxPerStageDescriptorSampledImages < 0x10000 || + limits->maxPerStageDescriptorStorageImages < 0x10000 || + limits->maxDescriptorSetSampledImages < 0x10000 || + limits->maxDescriptorSetStorageImages < 0x10000) { + return false; + } + } + // Vulkan 1.2 physical device features support { VkPhysicalDeviceVulkan12Features vulkan_12_features{ |
