GS/HW: Don't include TBW in hash cache key

Since we're hashing at the block level, a different TBW that causes a
different-looking texture should cause different blocks to get hashed,
and thus, a different hash.
This commit is contained in:
Stenzek 2024-03-10 22:59:40 +10:00 committed by Connor McLaughlin
parent 4fef86a635
commit d28ba0e53c
1 changed files with 1 additions and 2 deletions

View File

@ -7016,9 +7016,8 @@ GSTextureCache::HashCacheKey GSTextureCache::HashCacheKey::Create(const GIFRegTE
{
const GSLocalMemory::psm_t& psm = GSLocalMemory::m_psm[TEX0.PSM];
// This should arguably include CPSM, but old replacement textures didn't have it...
HashCacheKey ret;
ret.TEX0.U64 = TEX0.U64 & 0x00000003FFFFC000ULL; // TBW, PSM, TW, TH
ret.TEX0.U64 = TEX0.U64 & 0x00000003FFF00000ULL; // PSM, TW, TH
ret.TEXA.U64 = (psm.pal == 0 && psm.fmt > 0) ? (TEXA.U64 & 0x000000FF000080FFULL) : 0;
ret.CLUTHash = clut ? GSTextureCache::PaletteKeyHash{}({clut, psm.pal}) : 0;
ret.region_width = static_cast<u16>(region.GetWidth());