summaryrefslogtreecommitdiffstats
path: root/src/video_core/texture_cache/texture_cache.h
diff options
context:
space:
mode:
authorameerj <52414509+ameerj@users.noreply.github.com>2022-12-22 23:01:39 +0100
committerameerj <52414509+ameerj@users.noreply.github.com>2022-12-25 21:38:36 +0100
commit1209d428f14ffc6f1c8b6049b0431c30b26138d6 (patch)
treef1fe11edaaf1230d26e6c42e97b6eb51485973a3 /src/video_core/texture_cache/texture_cache.h
parenttexture_cache: Use pre-allocated buffer for texture uploads (diff)
downloadyuzu-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 '')
-rw-r--r--src/video_core/texture_cache/texture_cache.h9
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);
}