From 562c32cd1547fbf0f249c5c94a340ec76ba7fe17 Mon Sep 17 00:00:00 2001 From: TJnotJT Date: Mon, 13 Jul 2026 11:43:16 -0400 Subject: [PATCH] GS:HW: Fix ROV texture type conversion for temporary Z. --- pcsx2/GS/Renderers/HW/GSRendererHW.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp index 13e9f3a5ba..7ad4ba9434 100644 --- a/pcsx2/GS/Renderers/HW/GSRendererHW.cpp +++ b/pcsx2/GS/Renderers/HW/GSRendererHW.cpp @@ -7846,7 +7846,7 @@ void GSRendererHW::ConvertTextureTypeROVSingle(GSTextureCache::Target* tgt, bool } #if PCSX2_DEVBUILD - new_tex->SetDebugName(tgt->m_texture->GetDebugName()); + new_tex->SetDebugName(old_tex->GetDebugName()); #endif if (tgt->m_texture == old_tex) @@ -7877,12 +7877,13 @@ void GSRendererHW::ConvertTextureTypeROV(GSTextureCache::Target* rt, GSTextureCa // Convert depth to the proper type/format. if (ds) { - if (m_conf.ps.HasDepthROV() && !ds->m_texture->IsShaderWrite()) + // Note: we must use m_conf.ds because it might be the temporary Z texture. + if (m_conf.ps.HasDepthROV() && !m_conf.ds->IsShaderWrite()) { GL_PUSH("HW: Convert DepthStencil -> DepthColor for ROV."); ConvertTextureTypeROVSingle(ds, true); } - else if (!m_conf.ps.HasDepthROV() && !ds->m_texture->IsDepthStencil()) + else if (!m_conf.ps.HasDepthROV() && !m_conf.ds->IsDepthStencil()) { GL_PUSH("HW: Convert DepthColor -> DepthStencil for non-ROV."); ConvertTextureTypeROVSingle(ds, false);