aboutsummaryrefslogtreecommitdiffstats
path: root/api-test/vk-device.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'api-test/vk-device.cpp')
-rw-r--r--api-test/vk-device.cpp17
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{