ViroReact 2.57.2 - Mixed Reality on Meta Quest
This release brings Viro's AR component API to Meta Quest 3 / 3S, no new API to learn. The same ViroARScene you ship on phones now runs in passthrough mixed reality on Quest.
Highlights
-
Mixed Reality scenes on Quest. Pass a ViroARScene to ViroXRSceneNavigator
and it runs on phones (ARCore) and Quest (OpenXR). onAnchorFound,
ViroARPlane, and ViroARPlaneSelector fire from the room's floors, walls,
ceilings, and tables, with passthrough enabled automatically. -
Object detection on Quest. ViroObjectDetector now runs on Quest 3 / 3S,
driven by the Meta Passthrough Camera API. v1 emits labels + normalized boxes. -
Passthrough styling. New setPassthroughStyle(viewTag, { opacity, edgeColor })
tunes passthrough opacity and edge-highlight colour at runtime. -
Reliability fixes. Passthrough no longer renders a black background, and an
initial passthroughEnabled prop is honored even when set before the renderer
initializes.
Upgrade notes
- Permissions (Quest). The Expo plugin now declares
horizonos.permission.USE_ANCHOR_API (room planes) and
horizonos.permission.HEADSET_CAMERA (object-detection camera). Both are
runtime-granted — request them in-app or adb shell pm grant . - Room planes require Space Setup. Plane data comes from the Quest room model;
run Space Setup on the headset first, or no plane anchors are produced. - MR scenes: set hdrEnabled={false} on ViroXRSceneNavigator for now — the
HDR post-process path forces an opaque composite that hides passthrough. (A fix
to lift this restriction is planned.) - Object detection on Quest is Horizon OS v74+ and emits labels + 2D boxes
only (no worldPosition / screenBoundingBox yet).
See CHANGELOG.md for the full list of changes, and
docs/QUEST_SETUP.md for setup details.