From 59f68aecdf539608ecf9b0717432713965dbd134 Mon Sep 17 00:00:00 2001 From: Erik Date: Mon, 17 Aug 2026 21:16:26 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20file=20#419=20=E2=80=94=20tunnel=20rim?= =?UTF-8?q?=20polygon=20+=20exit=20ring=20flash,=20decomp-anchored=20(fixe?= =?UTF-8?q?d=20CreatureMode=20camera=200.24/-2.7/0.88,=20view-plane=20exit?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- docs/ISSUES.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/docs/ISSUES.md b/docs/ISSUES.md index c3441905..1bfb34ee 100644 --- a/docs/ISSUES.md +++ b/docs/ISSUES.md @@ -24,6 +24,35 @@ What does NOT go here: - Every session: scan OPEN issues at start; promote/close anything we touched during the session before ending. - Promoting to a Phase: mark as `DONE (promoted to Phase X)` + commit SHA where the Phase entry landed. +## #419 — Portal-tunnel rim polygon visible (FOV-coupled) + ring flash at exit (camera dolly vs retail's view-plane animation) + +**Status:** OPEN (filed 2026-08-17, user screenshot + FOV experiment). +**Symptom:** the tunnel's low-poly mouth shows as a faceted polygon +silhouette against black, scaling with the Config FOV slider (barely +visible at minimum FOV); a brief ring flash remains at exit even at +minimum FOV. **Decomp truth (`gmSmartBoxUI::UseTime @0x004D6F34`):** +retail renders portal space as a CreatureMode UI VIEWPORT with its OWN +projection — NOT the game camera. On tunnel entry it starts the 40 fps +authored animation (`set_sequence_animation`, DID via GetDIDByEnum +`0x10000002` slot 7) and parks the viewport camera at the authored point +**(0.24, −2.7, 0.88)** (`CreatureMode::SetCameraPosition`, constants +`0x3e75c28f/0xc02ccccd/0x3f6147ae`); the swirl's drift is a randomized +roll via `CreatureMode::SetCameraDirection_Degrees` (angle/duration +random-walk block @0x004d6fd0, beside the "In Portal Space - Please +Wait..." notice). The exit "zoom" is NOT a camera move: `TUNNEL_FADE_OUT` +@0x004d713b animates the transition view PLANE's distance +(`TRANSITION_VIEW_PLANE_DISTANCE` / `TELEPORT_ANIM_FADE_TIME` +constants) with the camera parked. **Our defect:** the portal viewport +draws with `_camera.Active.Projection` (game FOV + display aspect — +`LocalPlayerPortalViewport.Draw` in PrivatePresentationRenderer.cs), so +a wide FOV/aspect reveals the tube mouth retail's fixed frustum clips; +and if our exit moves the camera, the mouth sweeps through view once +(the min-FOV flash). **Fix shape:** authored fixed camera + viewport +projection for the tunnel pass (find CreatureMode's projection +parameters in the viewport render setup), port the roll drift, express +the exit as the view-plane distance animation. Retail-faithfulness fix — +no tuning knobs. + ## #418 — Login world load takes ~27 s: publication advances at a flat 32 blocks/s **Status:** IN-PROGRESS 2026-08-17 — producer half landed (this commit's