You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/how-to-guides/xr/index.md
+19-1Lines changed: 19 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -87,6 +87,24 @@ Needle Engine provides full WebXR support on iPhone and iPad through [App Clip t
87
87
88
88
For USDZ/QuickLook-based iOS AR experiences, see [Everywhere Actions](/docs/how-to-guides/everywhere-actions/). This approach uses Apple's native 3D format and supports a subset of functionality including spatial audio, animations, and interactions.
Needle Engine works on Apple Vision Pro out of the box. Safari on visionOS 2+ ships WebXR enabled by default — no flags, no setup. The same scene you build for Meta Quest runs on Vision Pro.
95
+
96
+
**Features:**
97
+
- Immersive VR sessions via WebXR
98
+
- Hand tracking
99
+
- Transient pointer input (eye + pinch)
100
+
- Picking, manipulating, physics, networking, multiplayer — same as on Quest
101
+
102
+
**Interactive passthrough on Vision Pro**
103
+
104
+
WebXR `immersive-ar` (passthrough) is not currently exposed by Apple on visionOS — this is a platform limitation that affects every WebXR engine, not Needle Engine specifically. For interactive passthrough content on Vision Pro today, use [Everywhere Actions](/docs/how-to-guides/everywhere-actions/). Needle Engine generates interactive USDZ files dynamically that play back in QuickLook on visionOS, with animations, material changes, spatial audio, and tap interactions — covering the most common passthrough use cases.
105
+
106
+
For a cross-platform Quest + Vision Pro app: use WebXR for shared VR, and add an Everywhere Actions path for Vision Pro passthrough from the same scene.
107
+
90
108
### Supported Devices & Browsers
91
109
92
110
The following devices and browsers have been verified to work with Needle Engine. When new devices with WebXR support are released, they will work with your apps out of the box.
@@ -107,7 +125,7 @@ The following devices and browsers have been verified to work with Needle Engine
| <logo-headerlogo="/imgs/apple-logo.webp"alt="Apple">Apple Vision Pro</logo-header> | ✔️ Safari (visionOS 2+) | Immersive VR via WebXR with hand tracking and transient pointer (eye + pinch). For interactive passthrough on Vision Pro, use [Everywhere Actions](/docs/how-to-guides/everywhere-actions/) — WebXR `immersive-ar` is not currently exposed by Apple on visionOS.|
111
129
| <logo-headerlogo="/imgs/meta-logo.webp"alt="Meta">Meta Quest 3</logo-header> | ✔️ Meta Browser | hand tracking, sessiongranted<sup>1</sup>, passthrough, depth sensing, mesh tracking |
112
130
| <logo-headerlogo="/imgs/meta-logo.webp"alt="Meta">Meta Quest 3S</logo-header> | ✔️ Meta Browser | hand tracking, sessiongranted<sup>1</sup>, passthrough, depth sensing, mesh tracking |
113
131
| <logo-headerlogo="/imgs/meta-logo.webp"alt="Meta">Meta Quest 2</logo-header> | ✔️ Meta Browser | hand tracking, sessiongranted<sup>1</sup>, passthrough (black and white) |
Copy file name to clipboardExpand all lines: documentation/reference/faq.md
+18Lines changed: 18 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -746,6 +746,24 @@ For tips on detecting mobile devices in your scripts, see [Detect Mobile Devices
746
746
747
747
To enable VR, simply add the `WebXR` component to your scene. See the [VR & AR (WebXR) guide](/docs/how-to-guides/xr/) for details.
748
748
749
+
## Does it work on Apple Vision Pro?
750
+
751
+
**Yes!** Apple Vision Pro is fully supported for **immersive VR** via WebXR, including hand tracking and eye+pinch input. The same scene you build for Meta Quest runs on Vision Pro — no separate codebase, no app store.
752
+
753
+
For **interactive passthrough (AR)** on Vision Pro, use [Everywhere Actions](/docs/how-to-guides/everywhere-actions/) — Needle Engine generates interactive USDZ files dynamically that play back in QuickLook on visionOS. WebXR `immersive-ar` is not available on visionOS at the moment — this is a platform limitation set by Apple, and affects every WebXR engine. Needle Engine's Everywhere Actions fill that gap with animations, material changes, spatial audio, and tap interactions in passthrough.
754
+
755
+
**What works today on Vision Pro:**
756
+
-**Immersive VR via WebXR** — works in Safari on visionOS 2+ out of the box (no flags needed). Add the `WebXR` component to your scene and the VR button appears.
757
+
-**Hand tracking** and **transient pointer** input (eye+pinch) are supported natively.
758
+
-**Interactive passthrough via [Everywhere Actions](/docs/how-to-guides/everywhere-actions/)** — animations, material changes, spatial audio, and tap interactions all play back in QuickLook on visionOS.
759
+
- Picking up and manipulating virtual objects, physics, networking, and the rest of the engine feature set all work the same way they do on Quest in VR mode.
760
+
761
+
**Recommended approach for a cross-platform Quest + Vision Pro app:**
762
+
- For shared VR experiences (full immersion, hand tracking, multiplayer), build once with Needle Engine and ship to **both Quest and Vision Pro** via WebXR — same scene, same code.
763
+
- If your app needs passthrough on Vision Pro, use [Everywhere Actions](/docs/how-to-guides/everywhere-actions/) for the Vision Pro path and WebXR passthrough for the Quest path. The same scene can target both.
764
+
765
+
See [WebXR device support](/docs/how-to-guides/xr/#vr-headsets) for the full feature matrix.
0 commit comments