From efae58de5267cf66e993efed265ef71c3e4c1346 Mon Sep 17 00:00:00 2001 From: refractionpcsx2 Date: Tue, 9 Jan 2024 17:39:54 +0000 Subject: [PATCH] GS/HW: Don't bother trying to draw empty draws --- pcsx2/GS/Renderers/HW/GSRendererHW.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp index ae80f5741663b..7a4e8d33155bb 100644 --- a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp +++ b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp @@ -1912,6 +1912,13 @@ void GSRendererHW::Draw() m_r = m_r.blend8(m_r + GSVector4i::cxpr(0, 0, 1, 1), (m_r.xyxy() == m_r.zwzw())); m_r = m_r.rintersect(context->scissor.in); + // Draw is too small, just skip it. + if (m_r.rempty()) + { + GL_INS("Draw %d skipped due to having an empty rect"); + return; + } + // We want to fix up the context if we're doing a double half clear, regardless of whether we do the CPU fill. const bool is_possible_mem_clear = IsConstantDirectWriteMemClear(); if (!GSConfig.UserHacks_DisableSafeFeatures && is_possible_mem_clear)