acdream/docs/superpowers/specs
Erik b4f131e5c6 docs(B.4c): design spec for door swing animation
Phase B.4c closes #58 (filed during B.4b ship). When a door's
state flips via ACE Door.ActOnUse, the L.2g chain handles the
SetState collision-bit flip but no UpdateMotion handler ever
animated the door visually. Investigation traced the gap to the
spawn-time registration gate at GameWindow.cs:2692 which requires
a multi-frame idle cycle — doors have no idle.

Design: door-specific spawn-time branch that bypasses the gate,
builds an AnimationSequencer, seeds it with Off (closed) or On
(open) cycle based on spawn PhysicsState. ACE Door.cs:43 sets the
same initial state. ~40 LOC in one file. Reuses the existing
AnimationSequencer + per-frame tick + WB renderer pipeline. No
changes downstream.

Discovered during self-review that the per-frame tick at
GameWindow.cs:7691-7697 unconditionally overwrites ae.Entity.MeshRefs
with sequencer-derived transforms; an empty sequencer would collapse
the door to origin. The state-seeded SetCycle at spawn keeps the
sequencer always producing valid frames. Also documented:
ae.Animation = null is safe because the tick's sequencer branch at
line 7497 never reads it (only the legacy slerp else branch does).

Diagnostic tags renamed from phase-named [B.4c] to durable
[door-anim] / [door-cycle] per Opus reviewer feedback on B.4b.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 06:26:57 +02:00
..
2026-04-11-foundation-phase-design.md docs: refresh strategic roadmap + Foundation phase design spec 2026-04-11 21:43:33 +02:00
2026-04-12-b3-complete-movement-design.md docs(specs): Phase B.3 Complete — movement and world navigation design 2026-04-12 15:54:12 +02:00
2026-04-12-physics-collision-engine-design.md docs(specs): Phase B.3 — physics collision engine design 2026-04-12 09:42:31 +02:00
2026-04-12-player-movement-design.md docs(specs): Phase B.2 — player movement mode design 2026-04-12 14:05:07 +02:00
2026-04-13-movement-completion-design.md docs: movement completion design spec (B.2/B.3) 2026-04-13 23:01:18 +02:00
2026-05-02-l3-remote-entity-motion-design.md docs(spec): Phase L.3 scope revision — combine L.3.1+L.3.2 2026-05-03 10:03:09 +02:00
2026-05-08-phase-n-worldbuilder-migration-design.md spec(rendering): Phase N WorldBuilder migration design + N.1 scenery 2026-05-08 08:47:23 +02:00
2026-05-08-phase-n1-scenery-via-wb-helpers-design.md spec(rendering): Phase N WorldBuilder migration design + N.1 scenery 2026-05-08 08:47:23 +02:00
2026-05-08-phase-n4-rendering-foundation-design.md spec(N.4): rendering pipeline foundation design 2026-05-08 12:47:49 +02:00
2026-05-08-phase-n5-modern-rendering-design.md phase(N.5): retirement amendment — InstancedMeshRenderer + StaticMeshRenderer + WbFoundationFlag deleted 2026-05-08 22:01:36 +02:00
2026-05-09-phase-a5-two-tier-streaming-design.md docs(A.5 T27): spec + plan amendments for T22.5 + ship 2026-05-10 10:06:26 +02:00
2026-05-09-phase-n5b-terrain-modern-design.md spec(N.5b): design for terrain on the modern rendering path 2026-05-09 08:23:09 +02:00
2026-05-10-issue-53-tier1-cache-design.md docs(post-A.5 #53): Tier 1 retry — mutation audit + cache design spec 2026-05-10 16:50:26 +02:00
2026-05-10-phase-m-network-stack-design.md docs(phase-m): sharpen Phase M into design spec + opcode coverage matrix 2026-05-10 19:22:49 +02:00
2026-05-11-phase-n6-slice1-design.md docs(perf #N6.1): apply final-review fixes — spec, baseline doc, issue #55 2026-05-11 12:51:10 +02:00
2026-05-12-l2g-dynamic-physicsstate-design.md docs(phys L.2g): design spec for dynamic PhysicsState toggling (doors) 2026-05-12 21:00:36 +02:00
2026-05-12-phase-c1.5a-portals-design.md docs(vfx #C.1.5a): ship Phase C.1.5a + file issue #56 for per-part collapse 2026-05-11 16:13:12 +02:00
2026-05-13-l2d-cbuildingobj-collision-design.md docs(phys L.2d): design spec for slice 1 BSP-hit diagnostic + L.2d reframe 2026-05-12 19:01:44 +02:00
2026-05-13-phase-b4b-design.md docs(B.4b): correct file paths — WorldPicker lives in AcDream.Core.Selection 2026-05-13 17:31:49 +02:00
2026-05-13-phase-b4c-design.md docs(B.4c): design spec for door swing animation 2026-05-14 06:26:57 +02:00
2026-05-13-phase-c1.5b-design.md docs(vfx #C.1.5b): design + plan for issue #56 + EnvCell DefaultScript 2026-05-11 23:51:44 +02:00