From 4eb0b097d61a18bcfa7395825554c4642e51092f Mon Sep 17 00:00:00 2001 From: lightningterror <18107717+lightningterror@users.noreply.github.com> Date: Sat, 6 Dec 2025 07:07:37 +0100 Subject: [PATCH] GS/HW: Adjust color_dest_blend, color_dest_blend2, blend_zero_to_one_range conditions. Don't enable color_dest_blend if it's a channel shuffle or dithering draw. Don't enable color_dest_blend2 if it's preferring sw blend or dithering draw. Don't enable blend_zero_to_one_range if it's preferring sw blend or dithering draw. --- pcsx2/GS/Renderers/HW/GSRendererHW.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp index ea59b2544f..962c0422a5 100644 --- a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp +++ b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp @@ -5876,9 +5876,9 @@ void GSRendererHW::EmulateBlending(int rt_alpha_min, int rt_alpha_max, const boo case AccBlendLevel::Basic: default: // Prefer sw blend if possible. - color_dest_blend &= !prefer_sw_blend; - color_dest_blend2 &= !prefer_sw_blend; - blend_zero_to_one_range &= !prefer_sw_blend; + color_dest_blend &= !(m_channel_shuffle || m_conf.ps.dither); + color_dest_blend2 &= !(prefer_sw_blend || m_conf.ps.dither); + blend_zero_to_one_range &= !(prefer_sw_blend || m_conf.ps.dither); accumulation_blend &= !prefer_sw_blend; // Enable sw blending for barriers. sw_blending |= blend_requires_barrier || prefer_sw_blend;