summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/video_core/memory_manager.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/video_core/memory_manager.cpp b/src/video_core/memory_manager.cpp
index 1926bb025..e5d357773 100644
--- a/src/video_core/memory_manager.cpp
+++ b/src/video_core/memory_manager.cpp
@@ -332,6 +332,10 @@ void MemoryManager::FlushRegion(GPUVAddr gpu_addr, size_t size) const {
332void MemoryManager::CopyBlock(GPUVAddr gpu_dest_addr, GPUVAddr gpu_src_addr, std::size_t size) { 332void MemoryManager::CopyBlock(GPUVAddr gpu_dest_addr, GPUVAddr gpu_src_addr, std::size_t size) {
333 std::vector<u8> tmp_buffer(size); 333 std::vector<u8> tmp_buffer(size);
334 ReadBlock(gpu_src_addr, tmp_buffer.data(), size); 334 ReadBlock(gpu_src_addr, tmp_buffer.data(), size);
335
336 // The output block must be flushed in case it has data modified from the GPU.
337 // Fixes NPC geometry in Zombie Panic in Wonderland DX
338 FlushRegion(gpu_dest_addr, size);
335 WriteBlock(gpu_dest_addr, tmp_buffer.data(), size); 339 WriteBlock(gpu_dest_addr, tmp_buffer.data(), size);
336} 340}
337 341