back to blog index | aday.net.au | mastodon | codepen

Macroverse 42.2 — WebXR VR VJ

2026-06-01

Macroverse **42.2** adds WebXR to the gig stack: scan a QR, put on a Quest, and you are inside the live VJ mix — or wearing the remote desk. Flat phones use the same session tokens; see Mobile VJ shell and audience phones.

---

What shipped

Audience VR

Open **Copy VR audience** from the VJ deck QR panel (or `vj-vr.html?remote=1&viewToken=…`).

VJ controller VR

Open **Copy VR VJ** (`role=vj` + `controlToken` + `viewToken`).

Auto VJ refinements

When Auto VJ is on, **shader swap** and **depth/param motion** are independent toggles (persisted per browser).

---

Try it

On the host: Settings → **VJ Show Session ID** → Apply → VJ tab → QR panel → **Copy VR audience** or **Copy VR VJ**.

Flat stream URLs (`vj-output.html`) are unchanged for Pi HDMI, OBS Browser Source, and phones.

---

Caveats (honest)

Flat 2D GLSL shaders are mapped onto the VR dome — it works, but shaders authored as true 360 ray-marches look best inside the sphere. Quest Browser or any headset with WebXR **immersive-vr** support.

Filter **Macroverse** in Dev logs on this blog for the commit trail.