fix: always use tracing, provide timing info 2s in + every 60s first

This commit is contained in:
2023-09-11 01:33:50 -05:00
parent a7e87c18a3
commit c71b6d69ab

View File

@@ -5,6 +5,8 @@ use sdl2::event::{Event};
use sdl2::keyboard::Keycode; use sdl2::keyboard::Keycode;
use std::time::{Duration, Instant}; use std::time::{Duration, Instant};
use spin_sleep::sleep; use spin_sleep::sleep;
use tracing_error::ErrorLayer;
use tracing_subscriber::layer::SubscriberExt;
#[cfg(target_os = "emscripten")] #[cfg(target_os = "emscripten")]
pub mod emscripten; pub mod emscripten;
@@ -16,6 +18,7 @@ mod entity;
mod game; mod game;
mod pacman; mod pacman;
mod modulation; mod modulation;
mod map;
#[cfg(target_os = "emscripten")] #[cfg(target_os = "emscripten")]
mod emscripten; mod emscripten;
@@ -25,18 +28,12 @@ pub fn main() {
let video_subsystem = sdl_context.video().unwrap(); let video_subsystem = sdl_context.video().unwrap();
// Setup tracing // Setup tracing
#[cfg(debug_assertions)] let subscriber = tracing_subscriber::fmt()
{ .with_max_level(tracing::Level::DEBUG)
use tracing_error::ErrorLayer; .finish()
use tracing_subscriber::layer::SubscriberExt; .with(ErrorLayer::default());
let subscriber = tracing_subscriber::fmt() tracing::subscriber::set_global_default(subscriber).expect("Could not set global default");
.with_max_level(tracing::Level::DEBUG)
.finish()
.with(ErrorLayer::default());
tracing::subscriber::set_global_default(subscriber).expect("Could not set global default");
}
let window = video_subsystem let window = video_subsystem
.window("Pac-Man", WINDOW_WIDTH, WINDOW_HEIGHT) .window("Pac-Man", WINDOW_WIDTH, WINDOW_HEIGHT)
@@ -83,7 +80,10 @@ pub fn main() {
| Event::KeyDown { | Event::KeyDown {
keycode: Some(Keycode::Escape) | Some(Keycode::Q), keycode: Some(Keycode::Escape) | Some(Keycode::Q),
.. ..
} => return false, } => {
event!(tracing::Level::INFO, "Exit requested. Exiting...");
return false
},
Event::KeyDown { keycode, .. } => { Event::KeyDown { keycode, .. } => {
game.keyboard_event(keycode.unwrap()); game.keyboard_event(keycode.unwrap());
} }
@@ -108,8 +108,8 @@ pub fn main() {
tick_no += 1; tick_no += 1;
if tick_no % (60 * 5) == 0 { if tick_no % (60 * 60) == 0 || tick_no == (60 * 2) {
let average_fps = tick_no as f32 / last_averaging_time.elapsed().as_secs_f32(); let average_fps = (tick_no % (60 * 60)) as f32 / last_averaging_time.elapsed().as_secs_f32();
let average_sleep = sleep_time / tick_no; let average_sleep = sleep_time / tick_no;
let average_process = loop_time - average_sleep; let average_process = loop_time - average_sleep;
@@ -123,7 +123,6 @@ pub fn main() {
sleep_time = Duration::ZERO; sleep_time = Duration::ZERO;
last_averaging_time = Instant::now(); last_averaging_time = Instant::now();
tick_no = 0;
} }
true true