docs: add .claude-context overview with session log
This commit is contained in:
1 parent
9aac46eba4
commit
221a15b591
1 file changed
+45
@@ -0,0 +1,45 @@
|
||||
# Newbury Exhibit — Overview
|
||||
|
||||
Fan-made shared multi-viewer AR experience for a physical LEGO® Hidden Side™ town
|
||||
display (tribute project — not affiliated with the LEGO Group). Multiple phones
|
||||
point at printed "Newbury Crests" (ArUco markers) and see the same server-driven
|
||||
ghosts anchored to real-world positions, each from their own viewpoint.
|
||||
|
||||
## Shape of the thing
|
||||
|
||||
- **Delivery:** web, no app install. Visitors open a URL and press Start.
|
||||
- **Tracking:** printed fiducials + a joint multi-marker solve. No SLAM, no
|
||||
cloud AR service — self-hosted end to end.
|
||||
- **Authority:** the server owns which ghosts exist and where; clients own only
|
||||
their own camera pose. That's what keeps multiple phones consistent.
|
||||
- **Motion:** deterministic functions of (spawn record, wall-clock time), so
|
||||
phones agree without streaming positions.
|
||||
|
||||
## Current state (v3)
|
||||
|
||||
v3 is a **tracking-core transplant** into v2's body: the playlist engine,
|
||||
residents/tracks, character editor, admin suite, error overlay, password-gated
|
||||
final mode and deployment all carry over unchanged. What changed is how the
|
||||
camera pose is recovered — see `01-architecture.md`.
|
||||
|
||||
Deployed in place of v2: same host port, container name and `exhibit-live`
|
||||
volume, so live state carries over and rollback is one command.
|
||||
|
||||
- Repo: `newbury-exhibit-v3` (v2 retained as the rollback path)
|
||||
- Deploy: `cd ~/newbury-exhibit-v3 && bash deploy.sh`
|
||||
- Rollback: `cd ~/newbury-exhibit && docker compose up -d --build`
|
||||
- Page index, API list and HUD guide: `docs/PAGES.md`
|
||||
|
||||
## Conventions
|
||||
|
||||
- World units cm; origin at the front-left table corner; +X right, +Z back,
|
||||
+Y up. Marker print sizes stay in mm (`sizeMM`), converted once at the solver
|
||||
boundary.
|
||||
- `data/*.json` are committed seeds; `data/live/` (a Docker volume) is runtime
|
||||
state.
|
||||
- Dev mode shows a tracking HUD and an on-screen error overlay; final mode
|
||||
password-gates admin.
|
||||
|
||||
## Session Log
|
||||
|
||||
- 2026-09-23 — AR Tracking Overhaul: Worker Offload, Camera Model, and Coplanar Pose Ambiguity — moved OpenCV off the main thread, fixed the focal/FOV model for portrait streams, deduped marker ids, gated the mirrored coplanar pose, and built a two-page A3 test rig with a foldable marker tower.
|
||||
Reference in new issue
Block a user