Ryan Walters
5bdf11dfb6
feat: enhance slow frame timing warning
2025-09-08 19:19:23 -05:00
Ryan Walters
49a6a5cc39
feat: implement stage transition for ghost eaten pause and add TimeToLive component
...
- `StageTransition` enum allows for collision system to apply state transition for ghost pausing.
- Added `TimeToLive` component & `time_to_live_system` to provide temporary sprite rendering of bonus sprites.
- Updated `stage_system` to handle the new ghost eaten pause state, including freezing entities and spawning bonus points.
2025-09-08 13:01:40 -05:00
Ryan Walters
42e309a46b
feat: enhance profiling with tick-based timing management and zero-padding for skipped frames
2025-09-06 12:15:02 -05:00
Ryan Walters
a38423f006
refactor: use welford's algorithm for one-pass avg/std dev. calculations, input logging tweaks
2025-09-06 12:15:02 -05:00
Ryan Walters
2fabd5d7a2
feat: measure total system timings using threading indifferent method, padded formatting
2025-09-06 12:15:00 -05:00
Ryan Walters
3e630bcbef
feat: run input_system less, rework profiling system to allow for conditional ticks, prepopulate and simplify locking mechanisms, drop RwLock
2025-09-03 23:09:19 -05:00
Ryan Walters
6771dea02b
fix: avoid padding jitter with constant name padding, minor timing calculation fixes
2025-09-03 19:00:45 -05:00
Ryan Walters
a21459f337
feat: revamp with better separate directional/linear animations, direction independent ticking
2025-09-01 15:28:57 -05:00
Ryan Walters
bed913d016
fix: profiling system calculates mean of sums, not mean of means
2025-09-01 12:01:39 -05:00
Ryan Walters
98196f3e07
feat: ghost animation states, frightened/eaten behaviors, smallvec animation arrays
2025-09-01 11:46:18 -05:00
Ryan Walters
5d4adb7743
refactor: merge 'formatting' submodule into 'profiling'
2025-08-28 14:12:23 -05:00
Ryan Walters
f31b4952e4
chore: remove wildcard/prelude imports, remove unused functions
2025-08-28 13:14:40 -05:00
Ryan Walters
80ebf08dd3
feat: stage sequence, ghost collisions & energizer logic, text color method, scheduler ordering
2025-08-28 12:40:02 -05:00
Ryan Walters
f14b3d38a4
feat: create hud rendering system
2025-08-27 22:55:26 -05:00
78300bdf9c
feat: rewrite movement systems separately for player/ghosts
2025-08-16 11:44:10 -05:00
514a447162
refactor: use strum::EnumCount for const compile time system mapping
2025-08-16 11:43:46 -05:00
3d0bc66e40
feat: ghosts system
2025-08-15 20:38:18 -05:00
fa12611c69
feat: ecs audio system
2025-08-15 20:28:47 -05:00
f1935ad016
refactor: use smallvec instead of collect string, explicit formatting, accumulator fold
2025-08-15 19:15:06 -05:00
80930ddd35
fix: use const MAX_SYSTEMS to ensure micromap maps are aligned in size
2025-08-15 18:40:24 -05:00
635418a4da
refactor: use stack allocated circular buffer, use RwLock+Mutex for concurrent system timing access
2025-08-15 18:06:25 -05:00
31193160a9
feat: debug text rendering of statistics, formatting with tests
2025-08-15 17:52:16 -05:00
5f0ee87dd9
feat: better profiling statistics, less spammy
2025-08-15 15:06:53 -05:00
8c95ecc547
feat: add profiling
2025-08-15 13:46:39 -05:00