diff options
| author | iwubcode <iwubcode@users.noreply.github.com> | 2017-10-27 13:58:42 -0500 |
|---|---|---|
| committer | iwubcode <iwubcode@users.noreply.github.com> | 2017-11-17 22:11:33 -0600 |
| commit | 8678e8ddd34e5d67ca08f2d6ec9a9e9aa61cf996 (patch) | |
| tree | ba3db0611a20d869d47b984de1f3e4a892db1a20 /Source/Core/VideoCommon/TextureCacheBase.cpp | |
| parent | be1853f95671987476fed1cad460e275bbf47713 (diff) | |
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
Diffstat (limited to 'Source/Core/VideoCommon/TextureCacheBase.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/TextureCacheBase.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
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 |
