From 8e2c063d6219b01037d1cb5bdb009000e52d8479 Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sat, 3 Nov 2018 00:17:00 +1000 Subject: TextureCache: Implement deferred/batched EFB copies --- Source/Core/VideoCommon/RenderBase.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Source/Core/VideoCommon/RenderBase.cpp') diff --git a/Source/Core/VideoCommon/RenderBase.cpp b/Source/Core/VideoCommon/RenderBase.cpp index 70025ec720..448b195a62 100644 --- a/Source/Core/VideoCommon/RenderBase.cpp +++ b/Source/Core/VideoCommon/RenderBase.cpp @@ -724,6 +724,10 @@ void Renderer::Swap(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, const // state changes the specialized shader will not take over. g_vertex_manager->InvalidatePipelineObject(); + // Flush any outstanding EFB copies to RAM, in case the game is running at an uncapped frame + // rate and not waiting for vblank. Otherwise, we'd end up with a huge list of pending copies. + g_texture_cache->FlushEFBCopies(); + Core::Callback_VideoCopiedToXFB(true); } -- cgit v1.2.3