diff options
| author | 2017-02-20 16:31:59 -0800 | |
|---|---|---|
| committer | 2017-02-26 17:22:04 -0800 | |
| commit | fb1979d7e26c20fe2b8d2c3d3dc998e5e00f2f61 (patch) | |
| tree | 690461954bff040727fa2cb3b34c9d71c003ea9c /src/video_core | |
| parent | Core: Make PerfStats internally locked (diff) | |
| download | yuzu-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.cpp | 6 |
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) { |