D478-D490: crash log, session start, performance, fidelity, regions
Crash-log snprintf (D478), start-mp folder (D479), shader pre-warm (D480), render worker thread (#92 low-end 45 to 60 fps, D481), lighter first-launch defaults (D482), sniper crouch/zoom fixes (D483-D485, #136), Rareware text TMEM swap (D75), D173 residual, turret/explosion fidelity (D486, #126), 21-level Windows golden rebase with a two-tier gate, PAL and JP convert/build/ boot (D258) with PAL frame height (D487) and osTvType (D488). Refs: D478 D479 D480 D481 D482 D483 D484 D485 D486 D75 D173 D258 D487 D488 #136 #126
No files matched your search
@@ -1,23 +1,29 @@
|
||||
# Golden baseline frames
|
||||
|
||||
`frame_NNNNNN.png` — reference `GE_PCDUMP` captures for `framediff.py`
|
||||
(`-level_09` BUNKER1: settled gameplay after the intro). Compared structurally, not exactly — the port
|
||||
is not frame-deterministic (see `docs/internals.md` "D117").
|
||||
`<level>/<platform>/frame_NNNNNN.png`: reference `GE_PCDUMP` captures for
|
||||
`tools_pc/verify.sh`, one folder per solo level (all 21, `cuba` = the ending)
|
||||
and per platform (`win` today; `linux` to come).
|
||||
|
||||
Regenerate after a deliberate visual change:
|
||||
**Recipe** (2026-10-02 re-base; `verify.sh` applies all of it):
|
||||
- `data/ge007.ini` pinned to ONLY `[Window] Width = 640, Height = 480` (every
|
||||
other option at its compiled-in default; verify.sh backs yours up).
|
||||
- `GE_RSEED=0x0123456789abcdef` (pinned PRNG).
|
||||
- `GE_INPUTSCRIPT="20:START"` (skips the intro flyby; the scripted pad is
|
||||
the only input) and `GE_PCDUMP="900-1500:300"`: frames 900/1200/1500 are
|
||||
settled gameplay on every level. **Cuba** instead: no input
|
||||
(`1:SNONE`) and `300-900:300` (the ending cutscene; it returns to the boot
|
||||
screens before frame 1200).
|
||||
- Every run ends via `GE_QUITFRAME` (orderly quit; never a hard kill, D344).
|
||||
|
||||
```sh
|
||||
# data/ge007.ini must hold ONLY this (back yours up) — every other option at
|
||||
# its compiled-in default; a personal FovScale/DrawDistance/MSAA fails the gate
|
||||
printf '[Window]
|
||||
Width = 640
|
||||
Height = 480
|
||||
' > data/ge007.ini
|
||||
GE_PCDUMP="640-1120:240" ./build-pc/ge007.x86_64.exe -level_09
|
||||
python tools_pc/framediff.py ppm --update # then git rm any stale stems
|
||||
```
|
||||
**Gate** (two tiers): the structural framediff (cell means, coverage,
|
||||
phash) catches gross breakage; then a per-pixel `--exact --tol 2` check
|
||||
with a per-level limit: 1% of pixels, 3% for Jungle and Surface 2, Cuba
|
||||
structural only. Measured run to run: <= 0.57% on 18 levels, Jungle 1.75%,
|
||||
Surface 2 2.33%, Cuba 36%; a global texture-filter switch measured 22%.
|
||||
|
||||
`tools_pc/verify.sh bunker1` does the ini pin + capture + diff for you.
|
||||
Regenerate one level after a deliberate visual change: run
|
||||
`tools_pc/verify.sh <level>` twice to confirm the new look is stable, then
|
||||
capture with the recipe above and replace `<level>/<platform>/*.png`.
|
||||
|
||||
## History
|
||||
|
||||
@@ -39,3 +45,9 @@ python tools_pc/framediff.py ppm --update # then git rm any stale stems
|
||||
its camera is nondeterministic (D117): 1 in ~5 gate runs failed it (dmean
|
||||
0.7 vs 20.7 run to run). All three frames are now settled gameplay; three
|
||||
independent captures agree (worst dmean ≤ 6.8).
|
||||
- **2026-10-02:** re-based and extended to all 21 levels (`<level>/win/`),
|
||||
recipe above. The flat bunker1 set at the folder root was retired. Two
|
||||
independent 21-level passes agreed; noise per level measured as listed.
|
||||
`verify.sh` no longer hard-kills (taskkill of every `ge007.x86_64.exe`,
|
||||
including a maintainer's game); it quits via `GE_QUITFRAME` and only stops
|
||||
its own PID as a watchdog fallback.
|
||||
|
After Width: | Height: | Size: 334 KiB |
|
After Width: | Height: | Size: 332 KiB |
|
After Width: | Height: | Size: 333 KiB |
|
After Width: | Height: | Size: 274 KiB |
|
After Width: | Height: | Size: 274 KiB |
|
After Width: | Height: | Size: 273 KiB |
|
After Width: | Height: | Size: 157 KiB |
|
After Width: | Height: | Size: 157 KiB |
|
After Width: | Height: | Size: 157 KiB |
|
After Width: | Height: | Size: 212 KiB |
|
After Width: | Height: | Size: 211 KiB |
|
After Width: | Height: | Size: 211 KiB |
|
After Width: | Height: | Size: 218 KiB |
|
After Width: | Height: | Size: 218 KiB |
|
After Width: | Height: | Size: 218 KiB |
|
After Width: | Height: | Size: 237 KiB |
|
After Width: | Height: | Size: 238 KiB |
|
After Width: | Height: | Size: 238 KiB |
|
After Width: | Height: | Size: 213 KiB |
|
After Width: | Height: | Size: 213 KiB |
|
After Width: | Height: | Size: 213 KiB |
|
After Width: | Height: | Size: 267 KiB |
|
After Width: | Height: | Size: 271 KiB |
|
After Width: | Height: | Size: 267 KiB |
|
After Width: | Height: | Size: 253 KiB |
|
After Width: | Height: | Size: 252 KiB |
|
After Width: | Height: | Size: 255 KiB |
|
After Width: | Height: | Size: 200 KiB |
|
After Width: | Height: | Size: 202 KiB |
|
After Width: | Height: | Size: 201 KiB |
|
After Width: | Height: | Size: 328 KiB |
|
After Width: | Height: | Size: 328 KiB |
|
After Width: | Height: | Size: 329 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
Before Width: | Height: | Size: 244 KiB |
|
Before Width: | Height: | Size: 244 KiB |
|
Before Width: | Height: | Size: 244 KiB |
|
After Width: | Height: | Size: 135 KiB |
|
After Width: | Height: | Size: 138 KiB |
|
After Width: | Height: | Size: 140 KiB |
|
After Width: | Height: | Size: 262 KiB |
|
After Width: | Height: | Size: 261 KiB |
|
After Width: | Height: | Size: 260 KiB |
|
After Width: | Height: | Size: 331 KiB |
|
After Width: | Height: | Size: 331 KiB |
|
After Width: | Height: | Size: 331 KiB |
|
After Width: | Height: | Size: 205 KiB |
|
After Width: | Height: | Size: 205 KiB |
|
After Width: | Height: | Size: 205 KiB |
|
After Width: | Height: | Size: 138 KiB |
|
After Width: | Height: | Size: 142 KiB |
|
After Width: | Height: | Size: 143 KiB |
|
After Width: | Height: | Size: 296 KiB |
|
After Width: | Height: | Size: 297 KiB |
|
After Width: | Height: | Size: 296 KiB |
|
After Width: | Height: | Size: 236 KiB |
|
After Width: | Height: | Size: 237 KiB |
|
After Width: | Height: | Size: 237 KiB |
|
After Width: | Height: | Size: 123 KiB |
|
After Width: | Height: | Size: 124 KiB |
|
After Width: | Height: | Size: 123 KiB |
|
After Width: | Height: | Size: 129 KiB |
|
After Width: | Height: | Size: 130 KiB |
|
After Width: | Height: | Size: 130 KiB |