fix(timing): batch state on original detail callbacks
Replace the host-frame 10 ms publication loop with the original timer matrix: 50/40/30/20/10 ms callbacks execute exactly 5/4/3/2/1 internal physics substeps. Ball state, claw progression, and flipper geometry are now visible only at the selected callback boundary rather than leaking intermediate substeps. Separate flipper input flags from flipper position. Key changes are sampled by the timer, then produce one delta edge, WAVE 2021, collision response, and rendered position update after physics, matching the Win16 callback order. Clear both input and position state on turn reset and keep tilt decay on the same timer cadence. Test Plan: - `cargo test --all-targets` -- passed, 70 tests - `cargo clippy --all-targets -- -D warnings` -- passed - `rumdl check CHANGELOG.md README.md RECONSTRUCTION.md` -- passed - `git diff --cached --check` -- passed
This commit is contained in:
+3
-3
@@ -64,9 +64,9 @@ validation runs.
|
||||
| Sound | F12 | - |
|
||||
|
||||
The five original speed choices remain available in settings. Physics now uses
|
||||
the original invariant 100 Hz millipixel substep, and claw animation follows the
|
||||
recovered 50/40/30/20/10 ms timer choices. Setting-specific repaint batching
|
||||
remains a presentation-only reconstruction boundary.
|
||||
the original invariant 100 Hz millipixel substep, batched as 5/4/3/2/1 steps on
|
||||
the recovered 50/40/30/20/10 ms callbacks. Claw animation, flipper edges, and
|
||||
visible state publication follow the same selected callback cadence.
|
||||
|
||||
The help screen is the original artwork in English, German, French, Italian,
|
||||
or Spanish. As instructed on that screen, double-clicking its upper-left exit
|
||||
|
||||
Reference in New Issue
Block a user