type-two
|
1f8ad13ed6
|
[sync1] wire TimelineUI to real Stage, null-mixer guard, M2 unlock + orchestrator updates
- index.html: mount TimelineUI, setMixerAuto(false) when timeline present
- timeline.js: _evalClips guards no-blocks / null-mixer (real Stage returns
null for non-characters; the stub never did)
- tldev.html removed; stagestub.js kept as the node-test fixture
- lane files: M1 accepted for all three, answers to open questions, M2
priorities (A: clipdrop event, PiP; B: row/scene-bar refresh; C: straight
into M3 render pipeline)
- SCENEGOD launch.json (informational; preview uses MESHGOD's entry)
SYNC 1 verified in-browser: character+backdrop+retargeted clip scene loads,
scrub interpolates frame-exact, scene save/load round-trips via server.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-18 18:36:16 +10:00 |
|
type-two
|
de3416869f
|
[laneA] M1: Stage viewport, retarget port, dock+inspector
- room3d.js: pure-module port of rigroom retarget, target parameterized;
_selftest bakes across two mismatched-rest skeletons (maxErr 6.4e-12)
- stage.js: Stage class (IBL, gizmo, entities, clip bake cache) per PLAN §4.2
- dock.js: asset dock + inspector, offline file-drop + clip retarget
- index.html/style.css: grid layout, guarded timeline import (page survives B absent)
Verified in-browser end-to-end: Mixamo char loaded+normalized, backdrop plane,
gizmo move, running clip retargeted (66 tracks) and animating live.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-07-18 18:06:22 +10:00 |
|