GS-HW: Preserve width of frame textures

This commit is contained in:
refractionpcsx2 2023-02-18 02:39:24 +00:00
parent 2fb9beca52
commit 50ed04436d
1 changed files with 15 additions and 1 deletions

View File

@ -622,7 +622,18 @@ GSTextureCache::Target* GSTextureCache::LookupTarget(const GIFRegTEX0& TEX0, con
dst = t;
dst->m_32_bits_fmt |= (psm_s.bpp != 16);
dst->m_TEX0 = TEX0;
// Nicktoons Unite tries to change the width from 10 to 8 and breaks FMVs.
// Haunting ground has some messed textures if you don't modify the rest.
if (!dst->m_is_frame)
{
dst->m_TEX0 = TEX0;
}
else
{
u32 width = dst->m_TEX0.TBW;
dst->m_TEX0 = TEX0;
dst->m_TEX0.TBW = width;
}
break;
}
@ -699,7 +710,10 @@ GSTextureCache::Target* GSTextureCache::LookupTarget(const GIFRegTEX0& TEX0, con
}
if (dst)
{
dst->m_TEX0.TBW = TEX0.TBW; // Fix Jurassic Park - Operation Genesis loading disk logo.
dst->m_is_frame |= is_frame; // Nicktoons Unite tries to change the width from 10 to 8 and breaks FMVs.
}
}
if (dst)