summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2023-04-14 18:07:38 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2023-04-29 00:18:21 +0200
commite3a2ca96bd2350471ebb6c2907c67b10254a4f7e (patch)
tree5238364cdea97449adb0766df0d6263123ed06da /src/video_core/renderer_opengl
parentTextureCache: refactor DMA downloads to allow multiple buffers. (diff)
downloadyuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.tar
yuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.tar.gz
yuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.tar.bz2
yuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.tar.lz
yuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.tar.xz
yuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.tar.zst
yuzu-e3a2ca96bd2350471ebb6c2907c67b10254a4f7e.zip
Diffstat (limited to 'src/video_core/renderer_opengl')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index 2de533584..4993d4709 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -1287,8 +1287,7 @@ bool AccelerateDMA::DmaBufferImageCopy(const Tegra::DMA::ImageCopy& copy_info,
}
const u32 buffer_size = static_cast<u32>(buffer_operand.pitch * buffer_operand.height);
static constexpr auto sync_info = VideoCommon::ObtainBufferSynchronize::FullSynchronize;
- const auto post_op = IS_IMAGE_UPLOAD ? VideoCommon::ObtainBufferOperation::DoNothing
- : VideoCommon::ObtainBufferOperation::MarkAsWritten;
+ const auto post_op = VideoCommon::ObtainBufferOperation::DoNothing;
const auto [buffer, offset] =
buffer_cache.ObtainBuffer(buffer_operand.address, buffer_size, sync_info, post_op);
@@ -1299,7 +1298,8 @@ bool AccelerateDMA::DmaBufferImageCopy(const Tegra::DMA::ImageCopy& copy_info,
if constexpr (IS_IMAGE_UPLOAD) {
image->UploadMemory(buffer->Handle(), offset, copy_span);
} else {
- texture_cache.DownloadImageIntoBuffer(image, buffer->Handle(), offset, copy_span);
+ texture_cache.DownloadImageIntoBuffer(image, buffer->Handle(), offset, copy_span,
+ buffer_operand.address, buffer_size);
}
return true;
}