diff options
Diffstat (limited to 'main/main.cpp')
-rw-r--r-- | main/main.cpp | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/main/main.cpp b/main/main.cpp index ad49e1f5bd..70713e2dd8 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -1706,7 +1706,7 @@ bool Main::start() { uint64_t Main::last_ticks = 0; uint64_t Main::target_ticks = 0; -Array Main::frame_times = Array(); +uint32_t Main::frames = 0; uint32_t Main::frame = 0; bool Main::force_redraw_requested = false; @@ -1825,19 +1825,10 @@ bool Main::iteration() { script_debugger->idle_poll(); } + frames++; Engine::get_singleton()->_idle_frames++; - // FPS counter - frame_times.push_back(ticks); - int frames = frame_times.size(); - - while (frame_times.size() > 0 && (int)frame_times.get(0) <= ticks - 1000000) { - frame_times.pop_front(); - } - - int update_frequency = MAX(1, (int)GLOBAL_GET("debug/settings/performance/update_frequency_msec")); - - if (frame > update_frequency * 1000) { + if (frame > 1000000) { if (editor || project_manager) { if (print_fps) { @@ -1853,7 +1844,8 @@ bool Main::iteration() { idle_process_max = 0; physics_process_max = 0; - frame %= update_frequency * 1000; + frame %= 1000000; + frames = 0; } if (fixed_fps != -1) |