Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01U9fkiH8GpdM5wKYRnnrhuH
35 lines
2.3 KiB
Markdown
35 lines
2.3 KiB
Markdown
# Handoff → Forge (Ozan's Windows box): rebuild windows-x64 with the static shadow cache (2026-09-28)
|
|
|
|
**From:** Fable orchestrator on the Mac · **Why:** `tinqs/engine` main gained the directional static shadow cache
|
|
(Part 1) and the stepped-sun crossfade (Part 2) — Forward+ renderer, new project settings, six+four
|
|
`RenderingServer` methods, a second depth atlas. The game (`ariki-game` ≥ 19490e358) calls the new methods by
|
|
name and degrades loudly on an engine without them, so Windows teammates keep working on the old binary but get
|
|
no cache. Rollout plan: `ariki-game/.agents/handoffs/2026-09-28-static-shadow-cache-rollout.md`.
|
|
|
|
## Steps (mirror of `forge-windows-4.7.md`, same toolchain as the fec9847 build)
|
|
|
|
1. `cd engine && tinqs pull` → `git log --oneline -1` must show the Part 2 commit named in the rollout plan.
|
|
2. Build (the flags recorded in `manifest.json` for fec9847):
|
|
```
|
|
scons platform=windows target=editor arch=x86_64 module_mono_enabled=yes d3d12=yes angle=yes accesskit=yes
|
|
scons platform=windows target=editor arch=x86_64 module_mono_enabled=yes d3d12=yes angle=yes accesskit=yes windows_subsystem=console
|
|
```
|
|
3. Regenerate glue + GodotSharp (matched-pair law — do not skip even though no C# binding is *required* by the
|
|
compiler; the manifest promises the pair):
|
|
```
|
|
bin\tinqs.windows.editor.x86_64.mono.exe --headless --generate-mono-glue modules\mono\glue
|
|
python modules\mono\build_scripts\build_assemblies.py --godot-output-dir=bin --godot-platform=windows
|
|
```
|
|
4. Copy into this repo: `engine/windows-x64/tinqs.windows.editor.x86_64.mono.exe`, `...mono.console.exe`, and the
|
|
whole `GodotSharp/` (replace, never merge).
|
|
5. `manifest.json` → `engine.windows-x64`: `version` (from `--version`), `engine_commit`, both sha256s, `built_on`,
|
|
`built_by`, `note` ("static shadow cache Part 1 + Part 2; GodotSharp regenerated"). Leave `macos-arm64` alone.
|
|
6. `tinqs push` (LFS).
|
|
|
|
## Verify
|
|
|
|
On a Windows `ariki-game` checkout: run the `update-engine` skill, `game.sh run`, host a world, then
|
|
`POST /command {"command":"env","key":"staticshadow","value":"on"}` — the log must NOT print
|
|
`[STATIC-SHADOW] engine without the cache`, and `GET /perf` must show `staticShadow` with `enabled: true`.
|
|
Terrain renders, animals animate, 0 `Wrapper class not found`.
|