From 53c90214551d7a7e5fe9d18e7f24818351cb7503 Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sat, 15 Apr 2023 22:48:57 +1000 Subject: [PATCH] GS/HW: Don't attempt to colour copy into depth target --- pcsx2/GS/Renderers/HW/GSRendererHW.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp index 1f91177f57..d5941f6b51 100644 --- a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp +++ b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp @@ -4934,16 +4934,15 @@ void GSRendererHW::OI_DoubleHalfClear(GSTextureCache::Target*& rt, GSTextureCach clear_depth ? "depth" : "target", base << 5, half << 5, w_pages, h_pages, m_cached_ctx.FRAME.FBW, color); // If some of the channels are masked, we need to keep them. - if (m_cached_ctx.FRAME.FBMSK != 0) + if (!clear_depth && m_cached_ctx.FRAME.FBMSK != 0) { GSTexture* tex = nullptr; GSTextureCache::Target* target = clear_depth ? ds : rt; const GSVector2 size = GSVector2(static_cast(target->GetUnscaledWidth()) * target->m_scale, static_cast(target->GetUnscaledHeight()) * target->m_scale); + pxAssert(!target->m_texture->IsDepthStencil()); try { - tex = target->m_texture->IsDepthStencil() ? - g_gs_device->CreateDepthStencil(size.x, size.y, target->m_texture->GetFormat(), true) : - g_gs_device->CreateRenderTarget(size.x, size.y, target->m_texture->GetFormat(), true); + tex = g_gs_device->CreateRenderTarget(size.x, size.y, target->m_texture->GetFormat(), false); } catch (const std::bad_alloc&) {