gsdx ogl: tekken5: only trigger channel effect shader when frame buffer is a single page

Fix missing model regression.
This commit is contained in:
Gregory Hainaut 2016-10-16 11:34:06 +02:00
parent 604d3bac3c
commit c2cf8e528c
1 changed files with 12 additions and 7 deletions

View File

@ -483,6 +483,7 @@ void GSRendererOGL::EmulateChannelShuffle(GSTexture** rt, const GSTextureCache::
m_context->TEX0.TFX = TFX_DECAL;
*rt = tex->m_from_target;
} else if (m_game.title == CRC::Tekken5) {
if (m_context->FRAME.FBW == 1) {
GL_INS("Tekken5 RGB Channel");
m_ps_sel.channel = 7;
m_context->FRAME.FBMSK = 0xFF000000;
@ -490,6 +491,10 @@ void GSRendererOGL::EmulateChannelShuffle(GSTexture** rt, const GSTextureCache::
// Minus current draw call
m_skip = 12 * (3 + 3 + 1) - 1;
*rt = tex->m_from_target;
} else {
// Could skip model drawing if wrongly detected
m_channel_shuffle = false;
}
} else if ((tex->m_texture->GetType() == GSTexture::DepthStencil) && !(tex->m_32_bits_fmt)) {
// So far 2 games hit this code path. Urban Chaos and Tales of Abyss
// UC: will copy depth to green channel