CLAUDE.md: mechlab windowed-mode spin root cause (parked cosmetic note)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -712,3 +712,13 @@ fine on modern hardware — just verify fixed-size netcode buffers and run one l
|
||||
- [ ] (Optional) Curate remaining WIP content as features are exercised (editor loads dev `Content\`).
|
||||
- [ ] (Optional) Build Debug/Armor configs (need `dbg.bin`/`arm.bin` output dirs).
|
||||
- [ ] (Parked, NOT scheduled) Raise MP cap to 24 or 32 — see "Reference"/"PLAN" sections above.
|
||||
- [ ] (Parked, minor, cosmetic-only) Mechlab background mech spins way too fast in **windowed**
|
||||
mode while focused (normal fullscreen / when unfocused). Root cause diagnosed 2026-07-02:
|
||||
`MechLab::Execute()` adds a fixed `yaw += 0.02f` **per frame** (`MechLab.cpp:285`, called
|
||||
per-frame via `DoShellLogic`) — no frame-time scaling. Fullscreen is vsync-locked (~60 FPS,
|
||||
flip chain) and unfocused-windowed gets GameOS's `Sleep(20)` (`Windows.cpp:391`), but
|
||||
focused-windowed uses the unsynced Blt path (`DXRasterizer.cpp:1267`) → uncapped FPS on
|
||||
modern GPUs → spin rate ∝ FPS. Not gameplay-affecting (in-game sim is time-based; this is
|
||||
the shell's decorative turntable). Fix when convenient: scale by frame time (1.2 rad/s;
|
||||
needs MW4.exe rebuild) or set `gos_Set_LoseFocusBehavior` mode 3 (built-in 60 Hz cap,
|
||||
`Windows.cpp:407`) to pace the whole shell.
|
||||
|
||||
Reference in New Issue
Block a user