summaryrefslogtreecommitdiffstats
path: root/src/video_core
diff options
context:
space:
mode:
authorameerj <52414509+ameerj@users.noreply.github.com>2021-05-16 02:34:20 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-05-16 02:34:20 +0200
commit5bef54618a2850e42f7bab45120dab9166468a25 (patch)
treeadc5dbbe050488eb0d85b7a38a5c8310dca9ef92 /src/video_core
parentMerge pull request #6300 from Morph1984/mbedtls (diff)
downloadyuzu-5bef54618a2850e42f7bab45120dab9166468a25.tar
yuzu-5bef54618a2850e42f7bab45120dab9166468a25.tar.gz
yuzu-5bef54618a2850e42f7bab45120dab9166468a25.tar.bz2
yuzu-5bef54618a2850e42f7bab45120dab9166468a25.tar.lz
yuzu-5bef54618a2850e42f7bab45120dab9166468a25.tar.xz
yuzu-5bef54618a2850e42f7bab45120dab9166468a25.tar.zst
yuzu-5bef54618a2850e42f7bab45120dab9166468a25.zip
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/gpu.cpp5
-rw-r--r--src/video_core/gpu.h2
-rw-r--r--src/video_core/renderer_opengl/renderer_opengl.cpp1
-rw-r--r--src/video_core/renderer_vulkan/renderer_vulkan.cpp1
4 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp
index a38024242..37f7b24e1 100644
--- a/src/video_core/gpu.cpp
+++ b/src/video_core/gpu.cpp
@@ -13,6 +13,7 @@
#include "core/frontend/emu_window.h"
#include "core/hardware_interrupt_manager.h"
#include "core/memory.h"
+#include "core/perf_stats.h"
#include "video_core/engines/fermi_2d.h"
#include "video_core/engines/kepler_compute.h"
#include "video_core/engines/kepler_memory.h"
@@ -191,6 +192,10 @@ u64 GPU::GetTicks() const {
return nanoseconds_num * gpu_ticks_num + (nanoseconds_rem * gpu_ticks_num) / gpu_ticks_den;
}
+void GPU::RendererFrameEndNotify() {
+ system.GetPerfStats().EndGameFrame();
+}
+
void GPU::FlushCommands() {
rasterizer->FlushCommands();
}
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h
index 8669e9940..29a867863 100644
--- a/src/video_core/gpu.h
+++ b/src/video_core/gpu.h
@@ -247,6 +247,8 @@ public:
return use_nvdec;
}
+ void RendererFrameEndNotify();
+
enum class FenceOperation : u32 {
Acquire = 0,
Increment = 1,
diff --git a/src/video_core/renderer_opengl/renderer_opengl.cpp b/src/video_core/renderer_opengl/renderer_opengl.cpp
index cc2e499f9..a718bff7a 100644
--- a/src/video_core/renderer_opengl/renderer_opengl.cpp
+++ b/src/video_core/renderer_opengl/renderer_opengl.cpp
@@ -155,6 +155,7 @@ void RendererOpenGL::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) {
++m_current_frame;
+ gpu.RendererFrameEndNotify();
rasterizer.TickFrame();
context->SwapBuffers();
diff --git a/src/video_core/renderer_vulkan/renderer_vulkan.cpp b/src/video_core/renderer_vulkan/renderer_vulkan.cpp
index 2e0cf4232..3986eb172 100644
--- a/src/video_core/renderer_vulkan/renderer_vulkan.cpp
+++ b/src/video_core/renderer_vulkan/renderer_vulkan.cpp
@@ -154,6 +154,7 @@ void RendererVulkan::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) {
if (swapchain.Present(render_semaphore)) {
blit_screen.Recreate();
}
+ gpu.RendererFrameEndNotify();
rasterizer.TickFrame();
}