GS/HW: Force depth ROV if alpha test needs depth feedback.

This commit is contained in:
TJnotJT
2026-07-02 19:46:47 +02:00
committed by lightningterror
parent 017b4d07da
commit 7a90caedec
+5 -1
View File
@@ -7533,7 +7533,11 @@ __fi void GSRendererHW::GetForcedROVUsage(bool& rov_color, bool& rov_depth)
// Separate flag for DATE since they are many methods and the interaction with ROV is not clear. // Separate flag for DATE since they are many methods and the interaction with ROV is not clear.
const bool date = m_cached_ctx.TEST.DATE; const bool date = m_cached_ctx.TEST.DATE;
if (rov_color && (m_conf.ps.HasShaderDiscard() || m_conf.ps.HasDepthOutput() || date)) // Alpha test might require depth feedback once we configure ROV.
const bool atst_needs_depth = m_cached_ctx.TEST.ATE &&
(m_cached_ctx.TEST.AFAIL == AFAIL_FB_ONLY || m_cached_ctx.TEST.AFAIL == AFAIL_RGB_ONLY);
if (rov_color && (m_conf.ps.HasShaderDiscard() || m_conf.ps.HasDepthOutput() || date || atst_needs_depth))
{ {
GL_INS("ROV: Color ROV with shader discard/depth write forces depth ROV"); GL_INS("ROV: Color ROV with shader discard/depth write forces depth ROV");
rov_depth = true; rov_depth = true;