Video room

A cuboid you sit inside — 4×3×8 m by default, resizable via URL (?w=&h=&l=, metres, true scale). All four walls and the floor play five different videos, locked to one clock — the CAVE pattern, as a web page. Open at venue size (14×4×30 m).

Experience

How the sync works

Every clip is generated at exactly 10.0 s / 30 fps (scripts/make_videos.py), all five start together, and a once-a-second loop-aware check snaps any straggler back to the master clock if it drifts past ~80 ms. The status line reports measured drift live. Videos are cover-cropped to each surface's aspect ratio rather than stretched. This is the multi-video capability WebXR gives you that USDZ docking doesn't — see WebKit/explainers#136.

Walking a real venue: at true scale, matching the room to your physical space means aligning yourself before entering — stand at the room's centre facing down its long axis, then Enter. Note that visionOS fades in passthrough when you move more than a couple of metres in a fully immersive session (a system safety behaviour, not a page choice) — how that plays out in a large venue is exactly what this preset exists to test.