From 4fcf4604478aef18564bbe3bd489a4d50329caec Mon Sep 17 00:00:00 2001 From: Gregory Hainaut Date: Thu, 9 Jul 2015 16:19:11 +0200 Subject: [PATCH] gsdx: fix DoC black screen video The game also set both depth and rt buffer at the same location but disable the depth test (ZTE is 0) --- plugins/GSdx/GSRendererHW.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/GSdx/GSRendererHW.cpp b/plugins/GSdx/GSRendererHW.cpp index a1c89741c3..0046a3fadc 100644 --- a/plugins/GSdx/GSRendererHW.cpp +++ b/plugins/GSdx/GSRendererHW.cpp @@ -338,8 +338,9 @@ void GSRendererHW::Draw() // be disabled. // 1/ GoW uses a Cd blending on a 24 bits buffer (no alpha) // 2/ SuperMan really draw the same value in both buffer... + // Note: FF DoC has both buffer at same location but disable the depth test (write?) with ZTE = 0 const bool no_rt = (context->ALPHA.IsCd() && PRIM->ABE && (context->FRAME.PSM == 1)) || - (context->FRAME.FBP == context->ZBUF.ZBP && !PRIM->TME && !context->ZBUF.ZMSK && !context->FRAME.FBMSK); + (context->FRAME.FBP == context->ZBUF.ZBP && !PRIM->TME && !context->ZBUF.ZMSK && !context->FRAME.FBMSK && context->TEST.ZTE); GIFRegTEX0 TEX0;