From 949d7832fafa33f7f553e2ca1139c1a16150984f Mon Sep 17 00:00:00 2001 From: bunnei Date: Sun, 14 Oct 2018 16:09:01 -0400 Subject: gl_rasterizer_cache: Only flush when use_accurate_framebuffers is enabled. --- src/video_core/rasterizer_cache.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/video_core/rasterizer_cache.h') diff --git a/src/video_core/rasterizer_cache.h b/src/video_core/rasterizer_cache.h index 4a34491a9..76743a85b 100644 --- a/src/video_core/rasterizer_cache.h +++ b/src/video_core/rasterizer_cache.h @@ -11,6 +11,7 @@ #include "common/common_types.h" #include "core/core.h" +#include "core/settings.h" #include "video_core/rasterizer_interface.h" #include "video_core/renderer_base.h" @@ -87,7 +88,12 @@ protected: void Unregister(const T& object) { auto& rasterizer = Core::System::GetInstance().Renderer().Rasterizer(); rasterizer.UpdatePagesCachedCount(object->GetAddr(), object->GetSizeInBytes(), -1); - object->Flush(); + + if (Settings::values.use_accurate_framebuffers) { + // Only flush if use_accurate_framebuffers is enabled, as it incurs a performance hit + object->Flush(); + } + object_cache.subtract({GetInterval(object), ObjectSet{object}}); } -- cgit v1.2.3