From d3bcfe0f5cc74f48ffb0511089bbcb4af7a1b33f Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sat, 29 Jun 2024 00:27:40 +1000 Subject: [PATCH] GS/HW: Prefer already-RTA-target over SW blend for no-overlap Saves barriers in Ace Combat and Metal Gear Solid games. --- pcsx2/GS/Renderers/HW/GSRendererHW.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp index 33cd698b46..5344d58239 100644 --- a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp +++ b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp @@ -4283,7 +4283,7 @@ void GSRendererHW::EmulateBlending(int rt_alpha_min, int rt_alpha_max, bool& DAT // Blending with alpha > 1 will be wrong, except BLEND_HW2. || (!(blend_flag & BLEND_HW2) && (alpha_c2_high_one || alpha_c0_high_max_one) && no_prim_overlap) // Ad blends are completely wrong without sw blend (Ad is 0.5 not 1 for 128). We can spare a barrier for it. - || (blend_ad && no_prim_overlap); + || (blend_ad && no_prim_overlap && !new_rt_alpha_scale); switch (GSConfig.AccurateBlendingUnit) {