diff --git a/plugins/GSdx/GSRendererDX.cpp b/plugins/GSdx/GSRendererDX.cpp index 2dafe8750b..cb7aa8f24a 100644 --- a/plugins/GSdx/GSRendererDX.cpp +++ b/plugins/GSdx/GSRendererDX.cpp @@ -606,10 +606,10 @@ void GSRendererDX::DrawPrims(GSTexture* rt, GSTexture* ds, GSTextureCache::Sourc } if (ate_RGBA_then_Z) { - z = true; + z = !m_context->ZBUF.ZMSK; r = g = b = a = false; } else if (ate_RGB_then_ZA) { - z = true; + z = !m_context->ZBUF.ZMSK; a = !!(m_context->FRAME.FBMSK & 0xFF000000); r = g = b = false; } diff --git a/plugins/GSdx/GSRendererOGL.cpp b/plugins/GSdx/GSRendererOGL.cpp index ace1725e6a..d87825f08f 100644 --- a/plugins/GSdx/GSRendererOGL.cpp +++ b/plugins/GSdx/GSRendererOGL.cpp @@ -1460,10 +1460,10 @@ void GSRendererOGL::DrawPrims(GSTexture* rt, GSTexture* ds, GSTextureCache::Sour } if (ate_RGBA_then_Z) { - z = true; + z = !m_context->ZBUF.ZMSK; r = g = b = a = false; } else if (ate_RGB_then_ZA) { - z = true; + z = !m_context->ZBUF.ZMSK; a = !!(m_context->FRAME.FBMSK & 0xFF000000); r = g = b = false; }