diff options
| author | Irene Knapp <ireneista@irenes.space> | 2026-07-15 23:25:44 -0700 |
|---|---|---|
| committer | Irene Knapp <ireneista@irenes.space> | 2026-07-15 23:25:44 -0700 |
| commit | dcbafa3d15f941dc46639a418e5724394d9a8ba2 (patch) | |
| tree | 26de4f8ae3a56d693c160eb6713e5b1bda787587 | |
| parent | 5dddb64f6a2fd072f2a26d4400f9a2a84386dc4e (diff) | |
add an fps counter
Force-Push: yes Change-Id: I66313a981a19ca65fa68463e89e093da14fde41e
| -rw-r--r-- | src/main.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs index 7372a24..ae56f2a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -34,6 +34,10 @@ struct Surreality { is_reinit_queued: bool, frame_index: usize, simulation_start: Instant, + + frame_count: usize, + last_second: u64, + frame_count_last_second: usize, } impl Surreality { @@ -46,6 +50,9 @@ impl Surreality { is_reinit_queued: false, frame_index: 0, simulation_start: Instant::now(), + frame_count: 0, + last_second: 0, + frame_count_last_second: 0, } } @@ -168,6 +175,16 @@ impl Surreality { self.frame_index = (frame_index + 1) % N_SIMULTANEOUS_FRAMES; } + self.frame_count += 1; + let second = self.simulation_start.elapsed().as_secs(); + if second > self.last_second { + let rate = (self.frame_count - self.frame_count_last_second) as f32 + / (second - self.last_second) as f32; + println!("{} fps", rate); + self.frame_count_last_second = self.frame_count; + self.last_second = second; + } + Ok(false) } } |