summaryrefslogtreecommitdiff
path: root/src/video_core
diff options
context:
space:
mode:
authorGravatar Yuri Kunde Schlesner2017-02-20 16:31:59 -0800
committerGravatar Yuri Kunde Schlesner2017-02-26 17:22:04 -0800
commitfb1979d7e26c20fe2b8d2c3d3dc998e5e00f2f61 (patch)
tree690461954bff040727fa2cb3b34c9d71c003ea9c /src/video_core
parentCore: Make PerfStats internally locked (diff)
downloadyuzu-fb1979d7e26c20fe2b8d2c3d3dc998e5e00f2f61.tar.gz
yuzu-fb1979d7e26c20fe2b8d2c3d3dc998e5e00f2f61.tar.xz
yuzu-fb1979d7e26c20fe2b8d2c3d3dc998e5e00f2f61.zip
Core: Re-write frame limiter
Now based on std::chrono, and also works in terms of emulated time instead of frames, so we can in the future frame-limit even when the display is disabled, etc. The frame limiter can also be enabled along with v-sync now, which should be useful for those with displays running at more than 60 Hz.
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/renderer_opengl/renderer_opengl.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/video_core/renderer_opengl/renderer_opengl.cpp b/src/video_core/renderer_opengl/renderer_opengl.cpp
index b3604106c..e19375466 100644
--- a/src/video_core/renderer_opengl/renderer_opengl.cpp
+++ b/src/video_core/renderer_opengl/renderer_opengl.cpp
@@ -10,8 +10,8 @@
10#include "common/assert.h" 10#include "common/assert.h"
11#include "common/bit_field.h" 11#include "common/bit_field.h"
12#include "common/logging/log.h" 12#include "common/logging/log.h"
13#include "common/synchronized_wrapper.h"
14#include "core/core.h" 13#include "core/core.h"
14#include "core/core_timing.h"
15#include "core/frontend/emu_window.h" 15#include "core/frontend/emu_window.h"
16#include "core/hw/gpu.h" 16#include "core/hw/gpu.h"
17#include "core/hw/hw.h" 17#include "core/hw/hw.h"
@@ -151,10 +151,10 @@ void RendererOpenGL::SwapBuffers() {
151 render_window->PollEvents(); 151 render_window->PollEvents();
152 render_window->SwapBuffers(); 152 render_window->SwapBuffers();
153 153
154 prev_state.Apply(); 154 Core::System::GetInstance().frame_limiter.DoFrameLimiting(CoreTiming::GetGlobalTimeUs());
155
156 Core::System::GetInstance().perf_stats.BeginSystemFrame(); 155 Core::System::GetInstance().perf_stats.BeginSystemFrame();
157 156
157 prev_state.Apply();
158 RefreshRasterizerSetting(); 158 RefreshRasterizerSetting();
159 159
160 if (Pica::g_debug_context && Pica::g_debug_context->recorder) { 160 if (Pica::g_debug_context && Pica::g_debug_context->recorder) {