Seen by Dawid on 11.09.2026, for later — outside the R360 milestone.
A profile with more than one R360 work: the orbits load one after another. The second one turns only once the first has every frame.
Why
Every orbit on the page shares one queue of three requests (pageQueue in src/components/ui/use-frame-loader.ts, FrameQueue in src/lib/r360/frame-loading.ts), and the queue is first in, first out. Since #123 an orbit in view asks for its whole set at once — 120 or 360 requests — so an orbit that comes into view second waits behind every frame of the first, its own coarse tier (every 8th frame, enough to turn it) included.
What changes
The one queue stays: it is what keeps the frames from crowding out the page's own pictures (#104). Its order changes. Candidates:
- Round robin: each orbit with work in the queue gets the next free request in turn.
- Tiers across the page: the coarse tier of every orbit in view before the rest of any of them.
- The orbit the visitor is touching goes first.
Done when two orbits in view both turn (coarse) within seconds of each other, whatever their order on the page; a unit test on FrameQueue pins the order; the budget of three requests is unchanged.
Spec: SPEC.md A13 · Related: #104, #123
Seen by Dawid on 11.09.2026, for later — outside the R360 milestone.
A profile with more than one R360 work: the orbits load one after another. The second one turns only once the first has every frame.
Why
Every orbit on the page shares one queue of three requests (
pageQueueinsrc/components/ui/use-frame-loader.ts,FrameQueueinsrc/lib/r360/frame-loading.ts), and the queue is first in, first out. Since #123 an orbit in view asks for its whole set at once — 120 or 360 requests — so an orbit that comes into view second waits behind every frame of the first, its own coarse tier (every 8th frame, enough to turn it) included.What changes
The one queue stays: it is what keeps the frames from crowding out the page's own pictures (#104). Its order changes. Candidates:
Done when two orbits in view both turn (coarse) within seconds of each other, whatever their order on the page; a unit test on
FrameQueuepins the order; the budget of three requests is unchanged.Spec: SPEC.md A13 · Related: #104, #123