diff options
| author | JPikachu <jpikachu.eden@gmail.com> | 2025-04-23 19:01:56 +0100 |
|---|---|---|
| committer | JPikachu <jpikachu.eden@gmail.com> | 2025-04-23 19:01:56 +0100 |
| commit | c64c404a2f60fee2126f671ab38940bf6c19089a (patch) | |
| tree | a85505131239fff95e1e1578d11bc2d4aad2c428 | |
| parent | e96383615b931e690c29a9064243965baa41f6b0 (diff) | |
Enable ExtendedDynamicState 3
| -rw-r--r-- | src/video_core/vulkan_common/vulkan_device.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/video_core/vulkan_common/vulkan_device.cpp b/src/video_core/vulkan_common/vulkan_device.cpp index 4c1a350e76..9426d31faf 100644 --- a/src/video_core/vulkan_common/vulkan_device.cpp +++ b/src/video_core/vulkan_common/vulkan_device.cpp @@ -582,25 +582,25 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR } if (extensions.extended_dynamic_state3 && is_radv) { LOG_WARNING(Render_Vulkan, "RADV has broken extendedDynamicState3ColorBlendEquation"); - features.extended_dynamic_state3.extendedDynamicState3ColorBlendEnable = false; - features.extended_dynamic_state3.extendedDynamicState3ColorBlendEquation = false; - dynamic_state3_blending = false; + features.extended_dynamic_state3.extendedDynamicState3ColorBlendEnable = true; + features.extended_dynamic_state3.extendedDynamicState3ColorBlendEquation = true; + dynamic_state3_blending = true; const u32 version = (properties.properties.driverVersion << 3) >> 3; if (version < VK_MAKE_API_VERSION(0, 23, 1, 0)) { LOG_WARNING(Render_Vulkan, "RADV versions older than 23.1.0 have broken depth clamp dynamic state"); - features.extended_dynamic_state3.extendedDynamicState3DepthClampEnable = false; - dynamic_state3_enables = false; + features.extended_dynamic_state3.extendedDynamicState3DepthClampEnable = true; + dynamic_state3_enables = true; } } if (extensions.extended_dynamic_state3 && (is_amd_driver || driver_id == VK_DRIVER_ID_SAMSUNG_PROPRIETARY)) { // AMD and Samsung drivers have broken extendedDynamicState3ColorBlendEquation LOG_WARNING(Render_Vulkan, "AMD and Samsung drivers have broken extendedDynamicState3ColorBlendEquation"); - features.extended_dynamic_state3.extendedDynamicState3ColorBlendEnable = false; - features.extended_dynamic_state3.extendedDynamicState3ColorBlendEquation = false; - dynamic_state3_blending = false; + features.extended_dynamic_state3.extendedDynamicState3ColorBlendEnable = true; + features.extended_dynamic_state3.extendedDynamicState3ColorBlendEquation = true; + dynamic_state3_blending = true; } if (extensions.vertex_input_dynamic_state && is_radv) { // TODO(ameerj): Blacklist only offending driver versions @@ -721,8 +721,8 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR "Removing extendedDynamicState3 due to missing extendedDynamicState2"); RemoveExtensionFeature(extensions.extended_dynamic_state3, features.extended_dynamic_state3, VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME); - dynamic_state3_blending = false; - dynamic_state3_enables = false; + dynamic_state3_blending = true; + dynamic_state3_enables = true; } logical = vk::Device::Create(physical, queue_cis, ExtensionListForVulkan(loaded_extensions), |
