diff options
author | ameerj <52414509+ameerj@users.noreply.github.com> | 2022-12-22 23:01:39 +0100 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2022-12-25 21:38:36 +0100 |
commit | 1209d428f14ffc6f1c8b6049b0431c30b26138d6 (patch) | |
tree | f1fe11edaaf1230d26e6c42e97b6eb51485973a3 /src/video_core/texture_cache/texture_cache.h | |
parent | texture_cache: Use pre-allocated buffer for texture uploads (diff) | |
download | yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.tar yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.tar.gz yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.tar.bz2 yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.tar.lz yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.tar.xz yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.tar.zst yuzu-1209d428f14ffc6f1c8b6049b0431c30b26138d6.zip |
Diffstat (limited to 'src/video_core/texture_cache/texture_cache.h')
-rw-r--r-- | src/video_core/texture_cache/texture_cache.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h index fccf4316d..6d7d8226f 100644 --- a/src/video_core/texture_cache/texture_cache.h +++ b/src/video_core/texture_cache/texture_cache.h @@ -96,7 +96,8 @@ void TextureCache<P>::RunGarbageCollector() { const auto copies = FullDownloadCopies(image.info); image.DownloadMemory(map, copies); runtime.Finish(); - SwizzleImage(*gpu_memory, image.gpu_addr, image.info, copies, map.mapped_span); + SwizzleImage(*gpu_memory, image.gpu_addr, image.info, copies, map.mapped_span, + swizzle_data_buffer); } if (True(image.flags & ImageFlagBits::Tracked)) { UntrackImage(image, image_id); @@ -467,7 +468,8 @@ void TextureCache<P>::DownloadMemory(VAddr cpu_addr, size_t size) { const auto copies = FullDownloadCopies(image.info); image.DownloadMemory(map, copies); runtime.Finish(); - SwizzleImage(*gpu_memory, image.gpu_addr, image.info, copies, map.mapped_span); + SwizzleImage(*gpu_memory, image.gpu_addr, image.info, copies, map.mapped_span, + swizzle_data_buffer); } } @@ -678,7 +680,8 @@ void TextureCache<P>::PopAsyncFlushes() { for (const ImageId image_id : download_ids) { const ImageBase& image = slot_images[image_id]; const auto copies = FullDownloadCopies(image.info); - SwizzleImage(*gpu_memory, image.gpu_addr, image.info, copies, download_span); + SwizzleImage(*gpu_memory, image.gpu_addr, image.info, copies, download_span, + swizzle_data_buffer); download_map.offset += image.unswizzled_size_bytes; download_span = download_span.subspan(image.unswizzled_size_bytes); } |