From 56b83e5cfa88f2db95dfc580732c6c6f9731f8bd Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sun, 21 Jan 2024 15:36:51 +1000 Subject: [PATCH] GS/HW: Fix double-half clears misfiring on CT32+Z24 when clearing depth --- 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 aa0db5beb0..dc08a99350 100644 --- a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp +++ b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp @@ -5920,7 +5920,7 @@ bool GSRendererHW::DetectDoubleHalfClear(bool& no_rt, bool& no_ds) const bool clear_depth = (m_cached_ctx.FRAME.FBP > m_cached_ctx.ZBUF.ZBP); const u32 base = clear_depth ? m_cached_ctx.ZBUF.ZBP : m_cached_ctx.FRAME.FBP; const u32 half = clear_depth ? m_cached_ctx.FRAME.FBP : m_cached_ctx.ZBUF.ZBP; - const bool enough_bits = clear_depth ? (frame_psm.trbpp >= zbuf_psm.trbpp) : (zbuf_psm.trbpp >= frame_psm.trbpp); + const bool enough_bits = (frame_psm.trbpp == zbuf_psm.trbpp); // Size of the current draw const u32 w_pages = (m_r.z + (frame_psm.pgs.x - 1)) / frame_psm.pgs.x;