From b61c4d36931551eb42b2aeea6edec2fddd213922 Mon Sep 17 00:00:00 2001 From: kd-11 Date: Wed, 25 May 2022 22:04:55 +0300 Subject: [PATCH] gl: Fix stat counters --- rpcs3/Emu/RSX/GL/GLDraw.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/GL/GLDraw.cpp b/rpcs3/Emu/RSX/GL/GLDraw.cpp index 1604edc262..063f9ab1d6 100644 --- a/rpcs3/Emu/RSX/GL/GLDraw.cpp +++ b/rpcs3/Emu/RSX/GL/GLDraw.cpp @@ -440,6 +440,8 @@ void GLGSRender::emit_geometry(u32 sub_index) } }; + m_profiler.start(); + auto& draw_call = rsx::method_registers.current_draw_clause; const rsx::flags32_t vertex_state_mask = rsx::vertex_base_changed | rsx::vertex_arrays_changed; const rsx::flags32_t vertex_state = (sub_index == 0) ? rsx::vertex_arrays_changed : draw_call.execute_pipeline_dependencies() & vertex_state_mask; @@ -495,6 +497,8 @@ void GLGSRender::emit_geometry(u32 sub_index) const GLenum draw_mode = gl::draw_mode(draw_call.primitive); update_vertex_env(upload_info); + m_frame_stats.vertex_upload_time += m_profiler.duration(); + if (!upload_info.index_info) { if (draw_call.is_single_draw()) @@ -593,6 +597,8 @@ void GLGSRender::emit_geometry(u32 sub_index) glMultiDrawElements(draw_mode, counts, index_type, offsets, static_cast(draw_count)); } } + + m_frame_stats.draw_exec_time += m_profiler.duration(); } void GLGSRender::begin() @@ -692,7 +698,7 @@ void GLGSRender::end() m_fragment_constants_buffer->notify(); m_transform_constants_buffer->notify(); - m_frame_stats.textures_upload_time += m_profiler.duration(); + m_frame_stats.setup_time += m_profiler.duration(); rsx::thread::end(); }