diff options
author | reduz <reduzio@gmail.com> | 2020-12-24 00:13:52 -0300 |
---|---|---|
committer | reduz <reduzio@gmail.com> | 2020-12-24 00:13:52 -0300 |
commit | 7219f37cb5738190b2b11c27c4e6a9a0ce5ecd30 (patch) | |
tree | 1267e7db2c8cae27713e5cdf4b43f75415c341f7 /servers/rendering/rendering_server_default.cpp | |
parent | 169159c8aac5807725594145bf029c0ff7ac8ef1 (diff) | |
download | redot-engine-7219f37cb5738190b2b11c27c4e6a9a0ce5ecd30.tar.gz |
Add API to get frame setup time on CPU
Needed for benchmarks
Diffstat (limited to 'servers/rendering/rendering_server_default.cpp')
-rw-r--r-- | servers/rendering/rendering_server_default.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/servers/rendering/rendering_server_default.cpp b/servers/rendering/rendering_server_default.cpp index 8c7c25c19b..da6c3ef6f4 100644 --- a/servers/rendering/rendering_server_default.cpp +++ b/servers/rendering/rendering_server_default.cpp @@ -101,11 +101,16 @@ void RenderingServerDefault::draw(bool p_swap_buffers, double frame_step) { TIMESTAMP_BEGIN() + uint64_t time_usec = OS::get_singleton()->get_ticks_usec(); + RSG::scene->update(); //update scenes stuff before updating instances + frame_setup_time = double(OS::get_singleton()->get_ticks_usec() - time_usec) / 1000.0; + RSG::storage->update_particles(); //need to be done after instances are updated (colliders and particle transforms), and colliders are rendered RSG::scene->render_probes(); + RSG::viewport->draw_viewports(); RSG::canvas_render->update(); @@ -159,6 +164,10 @@ void RenderingServerDefault::draw(bool p_swap_buffers, double frame_step) { frame_profile_frame = RSG::storage->get_captured_timestamps_frame(); } +float RenderingServerDefault::get_frame_setup_time_cpu() const { + return frame_setup_time; +} + void RenderingServerDefault::sync() { } |