docs: display-block gate script skeleton — §D1/§D2 testable now, §D3-§D6 pend their slices

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-08-13 17:29:28 +02:00
parent d13d63d0a5
commit 8463d64311

View file

@ -0,0 +1,66 @@
# Display & resolution block — connected-gate test script
**Status: slices D1 (#389 FOV) and D2 (#391 curated list) are LANDED and
testable now; D3 (#390 UI reposition) and D4D6 (fullscreen family
#377/#376/#388) fill in as they land.** Launch with `ACDREAM_RETAIL_UI=1`
against local ACE, **Release** build for anything you judge by feel or
frame rate. The resize/display chain logs evidence permanently — after any
step you can cross-check `display: resolution pick`, `window: framebuffer
resize event`, and `vulkan: swapchain recreated` lines in the launch log.
---
## §D1 — Widescreen FOV feel (#389, SmartboxFOV)
The world camera now uses retail's law: your horizontal view stays roughly
constant (~84° at 16:9) and wide screens trim the vertical slice instead of
bloating the sides. Your stored Field of View migrates 60 → 90 (the retail
default) on first load.
1. **Just look at the world** on your 16:9 window at your usual spot
(Holtburg outdoors is ideal). Compared to yesterday: the view should
feel slightly more "zoomed"/framed — retail's framing — rather than the
old wide-angle look. If you have retail side-by-side, the framing should
now match it at the same window shape.
2. **Resize the window across shapes** (drag it narrow, then wide). The
world must stay geometrically true at every shape — no squish, no
stretch, circles stay circles (pre-#389, mid-session resizes distorted
the world in chase mode; that bug is dead).
3. **F11 → Config → Field of View slider.** It now means retail's gameFOV
in degrees (10160, default 90) and applies LIVE as you drag —
the world widens/narrows immediately, no restart. Defaults restores 90.
4. Set it back to 90 when done (or click Defaults).
## §D2 — Curated resolution list (#391)
1. **F11 → Config → Resolution dropdown.** The list is now your monitor's
real modes, modern widescreen only: no 800x600, no 1024x768, nothing
your 2560x1440 desktop can't host (no 3840x2160 entry). Expect roughly:
1280x720 / 1366x768 / 1600x900 / 1920x1080 / 2560x1440 — exactly what
your monitor reports, one entry per size.
2. **Pick a few.** Every pick must land exactly (window resizes AND
re-renders crisp — §the #387 chain), including 2560x1440.
3. **Click Defaults.** The Resolution row restores **2560x1440** (your
desktop's own mode — the deliberate replacement for retail's 800x600
default; register row IA-22), and the dropdown shows it selected.
## §D3 — UI windows stay reachable on downscale (#390) — PENDING SLICE
*(To be filled in when the retail reposition mechanism lands. The test
shape will be: park panels near the right/bottom edges at 2560x1440, pick
1280x720, and confirm every window is still reachable per retail's rule.)*
## §D4§D6 — Fullscreen family (#377/#376/#388) — PENDING SLICES
*(To be filled in when the fullscreen slices land. Will include: fullscreen
on/off via the Config checkbox, resolution picks while fullscreen becoming
REAL display-mode switches — **[BLACK-SCREEN RISK]** steps will be flagged:
have Alt+F4 / the physical power of patience ready — and the #388 crash
scenario surviving: a fullscreen-state settings apply must never take the
client down.)*
---
**Carried context for the gate:** the FPS cost of large windows is real
physics (more pixels = more GPU work) — judge frame rate in Release only.
The title bar shows live FPS.