WebXR

WebXR
WebXR Device API
AbbreviationWebXR
Status
  • Candidate Recommendation (CR)
    • Device API
    • Augmented Reality Module
  • Working Draft (WD)
    • Layers API
    • Hand Input Module
    • Gamepads Module
  • First Public Working Draft (FPWD)
    • Lighting Estimation API
    • Hit Test Module
    • DOM Overlays Module
    • Depth Sensing Module
  • Editor's Draft (ED)
    • Anchors Module
OrganizationW3C
Committee
  • Immersive Web Community Group
  • Immersive Web Working Group
Editors
  • Rik Cabanier
  • Manish Goregaokar
  • Brandon Jones
  • Nell Waliczek
Base standards
Domain
Websiteimmersive-web.github.io

WebXR Device API is a Web application programming interface (API)[1][2] that describes support for accessing augmented reality and virtual reality devices, such as the HTC Vive, Oculus Rift, Oculus Quest, Google Cardboard, HoloLens, Apple Vision Pro, Magic Leap or Open Source Virtual Reality (OSVR), in a web browser.[3][4] The WebXR Device API and related APIs[5] are standards defined by W3C groups, the Immersive Web Community Group[6] and Immersive Web Working Group.[7][8] While the Community Group works on the proposals in the incubation period, the Working Group defines the final web specifications to be implemented by the browsers.[9][10][11]

WebVR was an experimental Web API that was only capable of representing virtual reality and was superseded by WebXR.[12][13][14]

History

[edit]

WebVR API was first conceived in spring 2014 by Vladimir Vukićević from Mozilla. The API's contributors include Brandon Jones(Google), Boris Smus and others from the Mozilla team.[15] On March 1, 2016, the Mozilla VR team and the Google Chrome team announced the version 1.0 release of the WebVR API proposal. The resulting API refactoring brought many improvements to WebVR.[16]

The latest WebXR Device API Working Draft was last published in February 2022.[4] The editors of the specification currently are from Google and Meta. Other members from Mozilla, Microsoft, Samsung Electronics and Apple, as well as various startups and invited experts have input in the future of the specification.[17] All of the discussions of the specifications are public on GitHub.[18]

Notable updates include enhanced AR capabilities, improved performance, and broader device support.[19] The ongoing efforts focus on standardizing and advancing the WebXR API, providing developers with the necessary tools and resources to create immersive web experiences.[20]

In 2018, the WebXR Device API superseded WebVR, being designed for both augmented reality, virtual reality devices and the possible future realities and devices.[12][13][21] WebVR was implemented in Firefox and Chromium-based browsers before being deprecated and removed. On September 24, 2018, the Immersive Web Working Group became official.[22]

Design

[edit]

The WebXR Device API exposes a few new interfaces (such as XRView,[21] XRPose[23]) that allow web applications to present content in virtual reality and augmented reality, by using WebGL with the necessary camera settings and device interactions (such as controllers or point of view).

Support

[edit]

WebXR Device API[24] (Candidate Recommendation Draft) is currently supported in the stable versions of Edge and Chrome 79+, Chrome for Android 79+, Opera 66+, Opera Mobile 64+, Samsung Internet 12+, and Oculus Browser.[25][26] WebXR is supported in Safari for visionOS on the Apple Vision Pro mixed reality headset.[27]

Similar technologies

[edit]

Although WebXR is unique as an API, it has similarities to native APIs in the same space such as OpenXR, ARCore, and ARKit.

See also

[edit]

References

[edit]
  1. ^ "Web APIs | MDN". developer.mozilla.org. Retrieved 2022-03-01.
  2. ^ "Why You Should Be Paying Attention to WebXR". CrossComm. Retrieved 2022-03-01.
  3. ^ "Fundamentals of WebXR". MDN Web Docs. Retrieved 22 December 2021.
  4. ^ a b "WebXR Device API". www.w3.org. Retrieved 2022-03-01.
  5. ^ "The Immersive Web Working Group/Community Group". immersive-web.github.io. Retrieved 2022-03-01.
  6. ^ "Immersive Web Community Group". www.w3.org. 22 March 2017. Retrieved 2022-03-01.
  7. ^ "Immersive Web Working Group". www.w3.org. Retrieved 2022-03-01.
  8. ^ "WebXR Device API - Web APIs | MDN". developer.mozilla.org. Retrieved 2022-03-01.
  9. ^ Immersive Web Community Group Proposals Repo, Immersive Web at W3C, 2022-02-21, retrieved 2022-03-01
  10. ^ "Community and Business Group Process | Community and Business Groups". www.w3.org. Retrieved 2022-03-01.
  11. ^ "Standards/Participating in a W3C Working Group - MozillaWiki". wiki.mozilla.org. Retrieved 2022-03-01.
  12. ^ a b Vrignaud, Andre (October 20, 2017). "Bringing Mixed Reality to the Web – The Mozilla Blog". The Mozilla Blog. Retrieved December 23, 2021.
  13. ^ a b Medley, Joseph (May 2018). "Welcome to the immersive web". Google Developers. Retrieved December 23, 2021.
  14. ^ "WebVR API". MDN Web Docs. Retrieved 2015-11-04.
  15. ^ "WebVR Deprecated Specification". W3C webvr. 2022-02-28.
  16. ^ Yee, Casey (March 1, 2016). "Introducing the WebVR 1.0 API Proposal". Mozilla Hacks. Retrieved 2021-12-23.
  17. ^ "Immersive Web Working Group - Participants". www.w3.org. Retrieved 2022-03-01.
  18. ^ "Immersive Web at W3C". GitHub. Retrieved 2022-03-01.
  19. ^ "WebXR GitHub repository". github.com. Retrieved 2024-08-02.
  20. ^ "W3C WebXR Device API". w3.org. Retrieved 2024-08-02.
  21. ^ a b "WebXR Device API". immersive-web.github.io. Retrieved 2022-03-01.
  22. ^ "Immersive Web Working Group Charter". Retrieved December 23, 2021.
  23. ^ "WebXR Device API". immersive-web.github.io. Retrieved 2022-03-01.
  24. ^ "WebXR Device API". W3C. Retrieved 2024-02-17.
  25. ^ ""webxr" | Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Retrieved 2022-03-01.
  26. ^ "Introduction to Oculus Browser | Oculus Developers". developer.oculus.com. Retrieved 2022-03-01.
  27. ^ "Meet Safari for spatial computing". developer.apple.com. Retrieved 2024-02-17.
[edit]