From 4cc99b9ff5e06acacc1e23f5a0c61e0f528799b8 Mon Sep 17 00:00:00 2001 From: CamilleLaVey Date: Sat, 29 Nov 2025 12:38:51 -0400 Subject: [PATCH] [vk] Fixing wrong enabling logic --- src/video_core/vulkan_common/vulkan_device.cpp | 5 +++-- src/video_core/vulkan_common/vulkan_device.h | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/video_core/vulkan_common/vulkan_device.cpp b/src/video_core/vulkan_common/vulkan_device.cpp index ef126d0436..7be248e317 100644 --- a/src/video_core/vulkan_common/vulkan_device.cpp +++ b/src/video_core/vulkan_common/vulkan_device.cpp @@ -1476,12 +1476,13 @@ void Device::RemoveUnsuitableExtensions() { // VK_EXT_multi_draw extensions.multi_draw = features.multi_draw.multiDraw; - if (extensions.multi_draw) { + features.multi_draw.multiDraw = VK_TRUE; LOG_INFO(Render_Vulkan, "VK_EXT_multi_draw: maxMultiDrawCount={}", properties.multi_draw.maxMultiDrawCount); + } else { + features.multi_draw.multiDraw = VK_FALSE; } - RemoveExtensionFeatureIfUnsuitable(extensions.multi_draw, features.multi_draw, VK_EXT_MULTI_DRAW_EXTENSION_NAME); diff --git a/src/video_core/vulkan_common/vulkan_device.h b/src/video_core/vulkan_common/vulkan_device.h index 526b0e827b..ea3598b899 100644 --- a/src/video_core/vulkan_common/vulkan_device.h +++ b/src/video_core/vulkan_common/vulkan_device.h @@ -743,9 +743,10 @@ public: return u32(Settings::values.dyna_state.GetValue()) > 0; } - /// Returns true if the device supports VK_EXT_vertex_input_dynamic_state. + /// Returns true if VK_EXT_vertex_input_dynamic_state is enabled on the device. bool IsExtVertexInputDynamicStateSupported() const { - return extensions.vertex_input_dynamic_state; + return extensions.vertex_input_dynamic_state && + features.vertex_input_dynamic_state.vertexInputDynamicState; } /// Returns true if the device supports VK_EXT_shader_demote_to_helper_invocation