From 8678e8ddd34e5d67ca08f2d6ec9a9e9aa61cf996 Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 27 Oct 2017 13:58:42 -0500 Subject: [PATCH] Texture Cache Base: Optimization to allow stitched or memory xfb textures to be looked up from cache directly if they were defined previously and their hash hasn't changed --- Source/Core/VideoCommon/TextureCacheBase.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Source/Core/VideoCommon/TextureCacheBase.cpp b/Source/Core/VideoCommon/TextureCacheBase.cpp index 8d97bd759d..46e48673d0 100644 --- a/Source/Core/VideoCommon/TextureCacheBase.cpp +++ b/Source/Core/VideoCommon/TextureCacheBase.cpp @@ -1119,6 +1119,11 @@ TextureCacheBase::GetXFBTexture(u32 address, u32 width, u32 height, TextureForma entry = CreateNormalTexture(tex_info.value()); + // XFBs created for the purpose of being a container for textures from memory + // or as a container for overlapping textures, never need to be combined + // with other textures + entry->may_have_overlapping_textures = false; + // At this point, the XFB wasn't found in cache // this means the address is most likely not pointing at an xfb copy but instead // an area of memory. Let's attempt to stitch all entries in this memory space