WebXR

From Wikipedia, the free encyclopedia
  (Redirected from )
WebXR
Status
  • Working Draft (WD)
    • Augmented Reality Module
    • Layers API
    • Device 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
  • Piotr Bialecki
  • Rik Cabanier
  • Manish Goregaokar
  • Brandon Jones
  • Nell Waliczek
  • Klaus Weidner
Base standards
  • HTML DOM
  • ECMAScript (ECMA-262)
  • Pointer Events
  • WebGL
Domain
  • JavaScript API
  • Augumented reality
  • Virtual reality
Websiteimmersive-web.github.io


WebXR is a JavaScript application programming interface (API) that enables applications to interact with augmented reality and virtual reality devices, such as the HTC Vive, Oculus Rift, Google Cardboard or Open Source Virtual Reality (OSVR), in a web browser.[1] The WebXR API is specified by a family of W3C specifications, and lead by the two groups in collaboration, the Immersive Web Community Group and Immersive Web Working Group.

WebVR was an experimental JavaScript API that was only capable of representing virtual reality and was superseded by WebXR.[2][3][4]

This API is designed with the following goals in mind:[5]

  • Detect available virtual reality devices.
  • Query the device's capabilities.
  • Poll the device’s position and orientation.
  • Display imagery on the device at the appropriate frame rate.

History[]

WebVR API was first conceived in spring 2014 by Vladimir Vukićević from Mozilla. The API's contributors include Brandon Jones, Boris Smus and others from the Mozilla team.[6] 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.[7]

The last tagged version is 1.1,[8] which was last edited on April 5, 2017. The editors of the document include members from Mozilla and Google teams. However some Microsoft members have joined, and are actively collaborating in the drafting process of version 2.0 for the WebVR API.[9]

In 2018, the WebXR API superseded WebVR, being designed for both augmented reality and virtual reality devices.[2][3] WebVR was implemented in Firefox and Chromium-based browsers before being deprecated and removed. On September 24th, 2018, the Immersive Web Working Group became official. [10]

Design[]

The WebVR API exposes a few new interfaces (such as VR Display, VR pose) that allow web applications to present content in virtual reality, by using WebGL with the necessary camera settings and device interactions (such as controllers or point of view). The API has been designed to follow a certain path, which is very similar to other intrusive Web API like the Geolocation API. The necessary steps are:

  1. Request a list of the available VR devices.
  2. Check to see if the desired device supports the presentation modes the application needs.
  3. If so, application advertises VR functionality to the user.
  4. User performs an action that indicates they want to enter VR mode.
  5. Request a VR session to present VR content with.
  6. Begin a render loop that produces graphical frames to be displayed on the VR device.
  7. Continue producing frames until the user indicates that they wish to exit VR mode.
  8. End the VR session.

Support[]

WebVR 1.0 is currently supported in the release version of Firefox 55+ for Windows (64 bit version only)[11] and was supported by Chrome for Android until version 80[12] as an Origin Trial Experiment, which means that developers can request a token to add to their website which will seamlessly enable WebVR. WebVR 1.1 is supported in Microsoft Edge from build 15002+,[13] and in Samsung Internet, Chromium, Servo and Oculus Carmel.

Chrome for Windows supports WebVR 1.1 in a special build. Firefox 55+ on macOS also supports WebVR if a setting is enabled by the user.[11]

Similar technologies[]

Although WebVR is unique as an API, there are native applications on most hardware allowing for networked experiences and access to web content. Several key tools, such as Unity and Blender, are also able to export for the web and provide users a way to use their content without installing a dedicated application.

See also[]

  • WebGL

References[]

  1. ^ "Fundamentals of WebXR". MDN Web Docs. Retrieved 22 December 2021.
  2. ^ a b Vrignaud, Andre (October 20, 2017). "Bringing Mixed Reality to the Web – The Mozilla Blog". The Mozilla Blog. Retrieved December 23, 2021.
  3. ^ a b Medley, Joseph (May 2018). "Welcome to the immersive web". Google Developers. Retrieved December 23, 2021.
  4. ^ "WebVR API". MDN Web Docs. Retrieved 2015-11-04.
  5. ^ "w3c/webvr". GitHub. Retrieved 2017-04-08.
  6. ^ "WebVR - Bringing Virtual Reality to the Web". webvr.info. Retrieved 2016-07-08.
  7. ^ Yee, Casey (March 1, 2016). "Introducing the WebVR 1.0 API Proposal". Mozilla Hacks. Retrieved 2021-12-23.
  8. ^ "WebVR". w3c.github.io. Retrieved 2017-04-08.
  9. ^ "WebVR". w3c.github.io. Retrieved 2017-04-08.
  10. ^ "Immersive Web Working Group Charter". Retrieved December 23, 2021.
  11. ^ a b Callahan, Dan (August 8, 2017). "Firefox 55: first desktop browser to support WebVR". Mozilla Hacks. Retrieved 2021-12-23.
  12. ^ "WebVR Rocks". WebVR Rocks.
  13. ^ mattwojo. "WebVR with Microsoft Edge - WebVR". docs.microsoft.com.

External links[]

Retrieved from ""