diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-05-07 23:25:34 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-05-07 23:46:12 +0200 |
commit | 2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc (patch) | |
tree | 2007ab777f557eba09cc85326438db0be943d980 /src/video_core/texture_cache | |
parent | Texture cache: reverse inmediate flush changes (diff) | |
download | yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.tar yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.tar.gz yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.tar.bz2 yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.tar.lz yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.tar.xz yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.tar.zst yuzu-2df19ef0fd5a91ca87e2c2cf201166a40c9d44dc.zip |
Diffstat (limited to 'src/video_core/texture_cache')
-rw-r--r-- | src/video_core/texture_cache/texture_cache.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h index 29ac01eb4..d49f3a7a0 100644 --- a/src/video_core/texture_cache/texture_cache.h +++ b/src/video_core/texture_cache/texture_cache.h @@ -1323,7 +1323,6 @@ ImageId TextureCache<P>::JoinImages(const ImageInfo& info, GPUVAddr gpu_addr, VA all_siblings.push_back(overlap_id); } else { bad_overlap_ids.push_back(overlap_id); - overlap.flags |= ImageFlagBits::BadOverlap; } }; ForEachImageInRegion(cpu_addr, size_bytes, region_check); @@ -1434,7 +1433,12 @@ ImageId TextureCache<P>::JoinImages(const ImageInfo& info, GPUVAddr gpu_addr, VA ImageBase& aliased = slot_images[aliased_id]; aliased.overlapping_images.push_back(new_image_id); new_image.overlapping_images.push_back(aliased_id); - new_image.flags |= ImageFlagBits::BadOverlap; + if (aliased.info.resources.levels == 1 && aliased.overlapping_images.size() > 1) { + aliased.flags |= ImageFlagBits::BadOverlap; + } + if (new_image.info.resources.levels == 1 && new_image.overlapping_images.size() > 1) { + new_image.flags |= ImageFlagBits::BadOverlap; + } } RegisterImage(new_image_id); return new_image_id; |