AgileLensMultiplayer
Private SDK — powers every Agile Lens Vision Pro multiplayer appThe shared SharePlay engine every Agile Lens Vision Pro multiplayer app runs on.
SharePlay is powerful and genuinely hard to build on directly — session lifecycle, spatial alignment, peer tracking, and controller input all have to be solved before an app can even start being its own thing. This Swift package solves it once: three real shipped apps — a laser-tag game, a party game, and a collaborative room scanner — all run on the same foundation instead of each reinventing GroupSession plumbing from scratch.
One session manager, every app
MultiplayerSession<Activity> is an @Observable wrapper around GroupSession that handles activation, joining, SystemCoordinator setup on visionOS, and participant tracking, with type-safe send/receive messaging on top — the boilerplate every SharePlay app needs, written once.
Peers, tracked
PeerStateTracker keeps every remote participant's transform, name, color, and platform current; HeadPoseBroadcaster syncs head position across the session — the shared-space equivalent of knowing where everyone actually is.
PSVR2 support, out of the box
SpatialControllerManager gives full 6DoF PSVR2 Sense controller tracking on visionOS — edge-triggered button callbacks, continuous thumbstick polling — so a controller-driven app doesn't have to build that layer either.
Proven three times over
LaserTag (real-time projectile physics, hand-gesture fire and shield), WhoAmI (spatial name cards floating over players' heads, speech-recognition guessing), and RoomScanPro (collaborative live room scanning) all run on this same package — three very different apps, one shared foundation.
At a glance
- ✦MultiplayerSession<Activity>: one @Observable wrapper around GroupSession for every app
- ✦Type-safe messaging, participant tracking, and connection-state management out of the box
- ✦PeerStateTracker + HeadPoseBroadcaster keep every remote player's position current
- ✦Full 6DoF PSVR2 Sense controller support on visionOS
- ✦Already proven across three shipped apps: LaserTag, WhoAmI, RoomScanPro
This one's internal.
AgileLensMultiplayer is Agile Lens tooling with no public release planned — it's here because it powers the client work. Curious what it powers? Browse the Agile Lens portfolio or get in touch about custom work.
Also in the lab
Forage
Fab's best friend. An AI-first scout and installer for the Unreal Engine packs you already own.
Project Ion
Your Vision Pro is a projector now. Professional-grade projection-mapping previsualization — honest ambient simulation, real projector specs, and a full creative rig in your room.
UnRealityKit Bridge
Unreal Engine as the simulation brain. RealityKit as the renderer. The architecture ILM shipped, opened up.
Pinchwork
Universal OpenXR hand tracking. Built in Unreal first — designed for every headset, not just one.
Unreal × visionOS
The punch list for making Unreal Engine on Apple Vision Pro feel production-ready.
Constellation
Your second brain as a navigable 3D star map. Walk through your own notes on Apple Vision Pro.
Promptbook
Spatial blocking and set previz for theatre on Apple Vision Pro — the stage manager's promptbook, reimagined in 3D.
Mission Control
A live radar for SharePlay sessions — watch every player, in every app, without joining the call.
RoomScanPro
Collaborative room scanning and real-world measurement for Apple Vision Pro and iPhone.
Co-Location Engine
Fiducial-marker-based co-location for Unreal Engine VR — real and virtual players sharing one room, without a shared coordinate system to begin with.