diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-04-14 18:07:38 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2023-04-29 00:18:21 +0200 |
commit | e3a2ca96bd2350471ebb6c2907c67b10254a4f7e (patch) | |
tree | 5238364cdea97449adb0766df0d6263123ed06da /src/video_core/renderer_opengl | |
parent | TextureCache: refactor DMA downloads to allow multiple buffers. (diff) | |
download | yuzu-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.cpp | 6 |
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; } |