aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJPikachu <jpikachu.eden@gmail.com>2025-04-23 19:01:56 +0100
committerJPikachu <jpikachu.eden@gmail.com>2025-04-23 19:01:56 +0100
commitc64c404a2f60fee2126f671ab38940bf6c19089a (patch)
treea85505131239fff95e1e1578d11bc2d4aad2c428
parente96383615b931e690c29a9064243965baa41f6b0 (diff)
Enable ExtendedDynamicState 3
-rw-r--r--src/video_core/vulkan_common/vulkan_device.cpp20
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),