Procházet zdrojové kódy

Merge pull request #10946 from goldenx86/amdBlending

Blacklist EDS3 blending from new AMD drivers
liamwhite před 3 roky
rodič
revize
7de778ad39
1 změnil soubory, kde provedl 8 přidání a 0 odebrání
  1. 8 0
      src/video_core/vulkan_common/vulkan_device.cpp

+ 8 - 0
src/video_core/vulkan_common/vulkan_device.cpp

@@ -528,6 +528,14 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR
     }
     }
 
 
     sets_per_pool = 64;
     sets_per_pool = 64;
+    if (extensions.extended_dynamic_state3 && is_amd_driver &&
+        properties.properties.driverVersion >= VK_MAKE_API_VERSION(0, 2, 0, 270)) {
+        LOG_WARNING(Render_Vulkan,
+                    "AMD drivers after 23.5.2 have broken extendedDynamicState3ColorBlendEquation");
+        features.extended_dynamic_state3.extendedDynamicState3ColorBlendEnable = false;
+        features.extended_dynamic_state3.extendedDynamicState3ColorBlendEquation = false;
+        dynamic_state3_blending = false;
+    }
     if (is_amd_driver) {
     if (is_amd_driver) {
         // AMD drivers need a higher amount of Sets per Pool in certain circumstances like in XC2.
         // AMD drivers need a higher amount of Sets per Pool in certain circumstances like in XC2.
         sets_per_pool = 96;
         sets_per_pool = 96;