We recently launched Immersive Web Emulator, a browser extension that lets developers test and debug their WebXR experiences directly in their web browser. However, until now, MR development with the emulator wasn’t supported, and it’s been a frequently requested feature in the short time since the launch of the project.
Today, we’re pleased to announce the release of the Immersive Web Emulator’s v1.1 update, which includes several new features that streamline MR development on the web. With these new capabilities, developers can now create and refine their MR experiences more easily and efficiently—without the need for MR-capable hardware.
The v1.1 update includes support for "immersive-ar" sessions, "anchors," and "plane-detection" features and gives developers the tools and capabilities they need to take their MR experiences to the next level. In this blog post, we’ll take a closer look at what’s new in the v1.1 update and what it means for MR development.
Support for "immersive-ar" Sessions
One of the key changes in the v1.1 update is the addition of support for "immersive-ar" sessions. When a WebXR experience requests an "immersive-ar" session, the emulator will now light up the AR buttons and inject and render a simple room environment as the background of the experience. This will provide developers with some level of spatial references, producing a more complete and accurate simulation of their MR experiences.
Support for "anchors" Feature
Another important change in the v1.1 update is the addition of support for the "anchors" feature. WebXR experiences that need to place spatial anchors will now work in the emulator.
Support for "plane-detection" Feature
The v1.1 update also includes support for the "plane-detection" feature. WebXR experiences will now be able to access a set of XRPlanes generated by the emulated room environment. The room environment can be customized by specifying its width, depth, and height via the emulator’s user interface, and changes to the XRPlanes will be reflected in real time, without requiring a refresh of the experience page.
Looking Ahead
We’re already looking ahead to future updates and have several exciting features in the pipeline. Some of these features include:
Hit testing feature support, which will allow developers to perform raycasting in the virtual environment and detect intersections with XRPlanes.
Persistent anchors support, enabling developers to save and recall anchors in their MR experiences.
More customization options for the room environment, including the ability to add custom planes besides walls, floor, and ceiling.
We’re committed to continuously improving the Immersive Web Emulator and making it the best tool possible for developers working on WebXR experiences. Thank you for your continued support, and we look forward to sharing more updates with you in the future.
Immersive Web Emulator’s v1.1 update is now live on the Chrome Web Store, while the update for the Microsoft Edge store is currently under review and will be available soon. The source code and assets of v1.1 are available in our GitHub repo at https://github.com/meta-quest/immersive-web-emulator
WebXR
Explore more
Quarterly Developer Recap: Tracked Keyboard, Hand Gestures, WebXR PWAs and more
Unlock the latest updates for developers building 3D, 2D and web-based experiences for Horizon OS, including the new tracked keyboard, microgesture-driven locomotion, and more.
Enhance Realism and Expedite Project Setup with the Instant Content Placement Mixed Reality Motif
Expedite mixed reality development with the Instant Content Placement Mixed Reality Motif. Find steps, tutorial links and source code to effectively leverage the Depth API and Raycast API and support interactable content in nearly any physical space.
V71 is your gateway to essential platform features and updates like the Billing Compatibility SDK so Android-based apps can not get access to IAP and subscriptions on Horizon OS. Read about v71 to discover 2D and web-based showcases built with Meta Spatial SDK and WebXR, new updates to System WebView, and how to get started with platform-level features that enable better app stability and performance.