Add: global factor controlling fps base interval

This commit is contained in:
DaZuo0122
2026-02-15 09:40:51 +08:00
parent e5417b6799
commit f20ed1fd9d
12 changed files with 289 additions and 52 deletions

View File

@@ -40,6 +40,7 @@ recovery_hotkey = "Ctrl+Alt+P"
[frontend]
backend = "bevy"
debug_overlay_visible = false
tauri_animation_slowdown_factor = 3
```
## Notes
@@ -50,3 +51,6 @@ debug_overlay_visible = false
- On Windows, `recovery_hotkey` now forces `visible = true` and `always_on_top = true` for recovery.
- `frontend.backend` selects runtime frontend implementation (`bevy` or `tauri`).
- `frontend.debug_overlay_visible` controls whether tauri window debug diagnostics panel is shown.
- `frontend.tauri_animation_slowdown_factor` controls tauri animation pacing multiplier.
valid range: `1..20`
effective frame interval: `(1000 / clip_fps) * factor`

View File

@@ -92,3 +92,8 @@ Default one-shot policy:
- `celebrate` and `success` are one-shot.
- other row animations loop by default.
Recommended FPS profile for 8-frame rows:
- looping rows: `1` fps
- one-shot `celebrate`/`success`: `2` fps

View File

@@ -115,7 +115,12 @@ An issue touching Tauri runtime behaviors must satisfy all requirements before `
8. Chroma-key quality check:
- verify no visible magenta background/fringe remains around sprite edges in normal runtime view,
including non-exact gradient magenta atlas backgrounds (for example `ferris`/`demogorgon`)
9. Scale anchor and bounds check:
9. Animation tempo check for 8-frame rows:
- looping row animations should feel very slow/readable (1 fps profile)
- one-shot `celebrate`/`success` should run slightly faster than loops (2 fps profile)
- tauri renderer applies an additional global slowdown factor (`x2`) over clip fps; verify perceived
playback matches this expectation
10. Scale anchor and bounds check:
- repeated scale changes should keep window centered without directional drift
- window must remain within current monitor bounds during scale adjustments
- no runtime error is allowed from monitor lookup during scale operations (e.g. `currentMonitor`
@@ -138,10 +143,14 @@ An issue touching Tauri runtime behaviors must satisfy all requirements before `
- main overlay auto-fits without clipping
- persisted/runtime scale value reflects the effective fitted scale after monitor/window bounds
- value persists after restart
5. Toggle `Visible` and verify:
5. Change animation speed factor slider and verify:
- runtime animation pace updates immediately in main overlay
- value is clamped to `1..20`
- value persists after restart via `frontend.tauri_animation_slowdown_factor`
6. Toggle `Visible` and verify:
- main overlay hide/show behavior
- persisted value survives restart
6. Toggle `Always on top` and verify:
7. Toggle `Always on top` and verify:
- main window z-order behavior updates
- persisted value survives restart