Display 3d graphics content on the web in an immersive fashion.

WebXR Documentation

Posts under WebXR tag

10 Posts
Sort by:
Post not yet marked as solved
2 Replies
268 Views
Hi, I am creating a native application for the Vision Pro. I am looking to integrate a window with WebXR content that can open an immersive space. I am able to do this from Safari and using a SFSafariViewController, however, I would like to use WKWebView inside my native application to do something similar (as this does not open an additional Safari window before allowing WebXR content). It seems in this current version, the WKWebView does not support WebXR? Is this true or is there any additional preferences that I need to add to enable this in this component.
Posted Last updated
.
Post not yet marked as solved
1 Replies
197 Views
I was wondering if anyone has managed to figure out a way to properly detect visionOS in Safari ? So I dont include device orientation controls when going fullscreen for my VR player features. It comes up as detecting as Ipad and so has ipad functions it cant do. Its asking for orientation permissions it doesn’t need also. I've already got transient-pointer XR input controls working. I’m not sure why they did that other than making life hard for developers I already had to spend days trying to fix my VR Canvas picture in picture hacks and Iphone fullscreen hack as Iphone still doesnt have html fullscreen support for WebGL canvas. those hacks decided to break. desktop safari now needed the canvas video added to dom to get pip working and and now a 100ms delay was needed to get Iphone fullscreen working. https://github.com/danrossi/canvas-pip-fullscreen
Posted
by danrossi1.
Last updated
.
Post not yet marked as solved
2 Replies
371 Views
I can't seem to get any hand tracking working in the simulator. And it will fail to launch webXR requesting hand tracking. So I can't test any controls in it. How is it possible to test controls in WebXR ? Any of these should work https://threejs.org/examples/?q=xr#webxr_vr_handinput_pressbutton
Posted
by danrossi1.
Last updated
.
Post not yet marked as solved
4 Replies
1.7k Views
The Safari version for VisionOS (or spatial computing) supports WebXR, as reported here. I am developing a Web App that intends to leverage WebXR, so I've tested several code samples on the safari browser of the Vision Pro Simulator to understand the level of support for immersive web content. I am currently facing an issue that seems like a bug where video playback stops working when entering an XR session (i.e. going into VR mode) on a 3D web environment (using ThreeJS or similar). There's an example from the Immersive Web Community Group called Stereo Video (https://immersive-web.github.io/webxr-samples/stereo-video.html) that lets you easily replicate the issue, the code is available here. It's worth mentioning that video playback has been successfully tested on other VR platforms such as the Meta Quest 2. The issue has been reported in the following forums: https://discourse.threejs.org/t/videotexture-playback-html5-videoelement-apple-vision-pro-simulator-in-vr-mode-not-playing/53374 https://bugs.webkit.org/show_bug.cgi?id=260259
Posted Last updated
.
Post not yet marked as solved
0 Replies
304 Views
Hello, I'm developing a WebXR application in Safari on visionOS. This app uses the microphone input in WebXR. I've noticed that with the microphone permission allowed the audio input doesn't capture. The size of the blob is always 0. I made a small demo here: https://github.com/chrisdubya/avp-threejs-webxr-test I've tried this demo on other WebXR supported HMDs and the audio capture works fine.
Posted Last updated
.
Post not yet marked as solved
0 Replies
273 Views
I am testing WebXR, via BabylonJS, on Vision Pro. Stereo 360 photos are extremely common, and a vital part of my application. However, Safari shows the texture as quite a bit lighter and more contrasty than is correct, almost like the wrong image gamut. This only seems to happen with the stereo domes, the displayed image has correct contrast when non running via WebXR. I'm hoping someone has seen similar and has a workaround, or a tracking bag. Cheers!
Posted
by justrw.
Last updated
.
Post not yet marked as solved
3 Replies
617 Views
I understand that fully immersive experiences, Quicklook using USDZ, and the newly adopted element tag for 3D objects are all supported in WebXR in Safari on Vision OS. What about Mixed Reality in WebXR? Meaning augmented reality experiences seen using passthrough on the apple vision pro where you can see your environment in combination with the webXR experience. (not fully immersive) Can you run full webXR experiences in passthrough mode? Or just view 3D models.
Posted
by seanmccue.
Last updated
.
Post not yet marked as solved
0 Replies
587 Views
I have created a react-three-fiber web-app which uses webgl canvas. When the canvas is forced to rerender due to external change, a new canvas context is being created and the previous one is not lost. This leads to safari refresh and crash as the no of active canvas contexts goes beyond the max limit alongwith the memory. This issue is specific to Safari only and (chrome only on iOS). Does Safari have a different garbage collection mechanism and not include webgl context clear automatically? If it doesnt, is there an API to invoke the same?
Posted Last updated
.
Post not yet marked as solved
0 Replies
815 Views
I am developing a web application that leverages WebGL to display 3D content. The app would benefit from tracking headset movement when viewing the 2D page as a Window while wearing Vision Pro. This would ultimately allow me a way to convey the idea of the Window acting as a portal into a virtual environment, as the rendered perspective of the 3D environment would match that of the user wearing the headset. This is a generic request/goal, as it would be applicable to any browser and any 6dof device, but I am interested in knowing if it is currently possible with Vision Pro (and the Simulator) and its version of Safari for "spatial computing". I can track the head movement while in a WebXR XR or "immersive" session, but I would like to be able to track it without going into VR mode. Is this possible? If so, how and using which tools?
Posted Last updated
.