Vulkan 图像不兼容,是否有检查哪些参数不兼容的好方法?

Vulkan image incompatibility, is there a nice way to check which parameters are incompatible?

我的验证错误返回以下错误:

Message ID name: VUID-VkImageCreateInfo-imageCreateMaxMipLevels-02251
Message: Validation Error: [ VUID-VkImageCreateInfo-imageCreateMaxMipLevels-02251 ] Object 0: handle = 0x1867f53a780, name = Logical device: NVIDIA GeForce GTX 1070, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xbebcae79 | vkCreateImage(): Format VK_FORMAT_R8G8B8A8_SRGB is not supported for this combination of parameters and VkGetPhysicalDeviceImageFormatProperties returned back VK_ERROR_FORMAT_NOT_SUPPORTED. The Vulkan spec states: Each of the following values (as described in Image Creation Limits) must not be undefined : imageCreateMaxMipLevels, imageCreateMaxArrayLayers, imageCreateMaxExtent, and imageCreateSampleCounts (https://vulkan.lunarg.com/doc/view/1.2.198.1/windows/1.2-extensions/vkspec.html#VUID-VkImageCreateInfo-imageCreateMaxMipLevels-02251)
Severity: VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT

我确切地知道代码中导致此问题的位置,但是我不知道是哪个参数组合出了问题。有没有办法让 driver 表示:

“您的图片格式为 x,与使用类型 y 不兼容”或类似格式?

如果某些参数发生冲突,请请求 https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues 改进错误报告。理想情况下应该有适当的错误消息。

但是如果GPU根本不支持给定的参数组合,那就没办法了。问“你为什么不支持X”是没有意义的。他们根本不这样做,因为它没有在给定的 GPU\driver.

上实现或无法实现