Wrong feature support check when creating a device
Rua opened this issue · 0 comments
Rua commented
Reported by @Fuzzyzilla on Discord.
When creating a device, the enabled features are checked against those supported by the physical device. But it does not check if those features will actually be available with the provided enabled extensions.
For example, if your device supports khr_dynamic_rendering
(and not Vulkan 1.3) but you don't enable it, you can nonetheless enable the dynamic_rendering
feature. Since VkPhysicalDeviceDynamicRenderingFeaturesKHR
is not available without the extension, it does not get passed to the device creation, and the feature gets silently ignored. But Vulkano goes by the original DeviceFeatures
struct, not the subset that gets passed through to Vulkan.