Skip to content

Commit a5bfeec

Browse files
committed
AVP
1 parent bcc59d6 commit a5bfeec

2 files changed

Lines changed: 37 additions & 1 deletion

File tree

documentation/how-to-guides/xr/index.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,24 @@ Needle Engine provides full WebXR support on iPhone and iPad through [App Clip t
8787

8888
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.
8989

90+
### <logo-header logo="/imgs/apple-logo.webp" alt="Apple">Apple Vision Pro</logo-header>
91+
92+
**Immersive VR via WebXR — fully supported**
93+
94+
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+
90108
### Supported Devices & Browsers
91109

92110
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
107125

108126
| Device | Browser | Features |
109127
| --- | --- | --- |
110-
| <logo-header logo="/imgs/apple-logo.webp" alt="Apple">Apple Vision Pro</logo-header> | ✔️ Safari | hand tracking, transient pointer support |
128+
| <logo-header logo="/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. |
111129
| <logo-header logo="/imgs/meta-logo.webp" alt="Meta">Meta Quest 3</logo-header> | ✔️ Meta Browser | hand tracking, sessiongranted<sup>1</sup>, passthrough, depth sensing, mesh tracking |
112130
| <logo-header logo="/imgs/meta-logo.webp" alt="Meta">Meta Quest 3S</logo-header> | ✔️ Meta Browser | hand tracking, sessiongranted<sup>1</sup>, passthrough, depth sensing, mesh tracking |
113131
| <logo-header logo="/imgs/meta-logo.webp" alt="Meta">Meta Quest 2</logo-header> | ✔️ Meta Browser | hand tracking, sessiongranted<sup>1</sup>, passthrough (black and white) |

documentation/reference/faq.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -746,6 +746,24 @@ For tips on detecting mobile devices in your scripts, see [Detect Mobile Devices
746746

747747
To enable VR, simply add the `WebXR` component to your scene. See the [VR & AR (WebXR) guide](/docs/how-to-guides/xr/) for details.
748748

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.
766+
749767
## Does it work on iOS?
750768

751769
**Yes!** Needle Engine works on iOS in two ways:

0 commit comments

Comments
 (0)