Immersive Web Working Group Charter
The mission of the Immersive Web Working Group is to help bring high-performance Virtual Reality (VR) and Augmented Reality (AR) (collectively known as XR) to the open Web via APIs to interact with XR devices and sensors in browsers.
This proposed charter is available on GitHub. Feel free to raise issues.
Charter Status | See the group status page and detailed change history. |
---|---|
Start date | [dd monthname yyyy] (date of the "Call for Participation", when the charter is approved) |
End date | [dd monthname yyyy] (Start date + 2 years) |
Chairs | Ada Rose Cannon (Samsung), Chris Wilson (Google), Ayşegül Yönet (Microsoft) |
Team Contacts | Atsushi Shimono (0.15 FTE) |
Meeting Schedule |
Teleconferences: topic-specific calls may be held
Face-to-face: we will meet during the W3C's annual Technical Plenary week; additional face-to-face meetings may be scheduled by consent of the participants, usually no more than 3 per year. |
Scope
The Immersive Web Working Group will develop standardized APIs to provide access to input and output capabilities commonly associated with XR hardware such as tethered headsets and sensors as well as mobile handheld devices and standalone headsets. The group will also investigate compatibility with non head-worn, multi-view displays. Examples include Looking Glass or zSpace displays. The group will develop APIs to enable the creation of XR web experiences that are embeddable in the Web of today, enabling progressive enhancement of existing sites.
A new generation of head-mounted displays and environment sensing capabilities on mobile devices are enabling augmented and virtual reality (collectively known as XR) to emerge as a critical field of evolution for human-machine interactions. Due to its inherent low friction and support for ephemeral experiences, the Web provides a promising ecosystem for the creation, distribution, and experiencing of XR content, applications, and services.
The scope of the Immersive Web Working Group charter is to define APIs which:
- Detect the UA's capability to render XR scenes and report XR sensor values, including the device's position and orientation over time.
- Query the ability to support specific capabilities.
- Present imagery to the device at the device's native frame rate, using the device’s position and orientation over time to provide an immersive experience.
- Provide information about XR-specific input, including tracked controller state and hand gesture.
- Provide information needed to allow virtual imagery to feel like a natural part of the real-world display on devices which support augmenting reality, such as surface, lighting, and object tracking data.
- Better integrate immersive functionality into the web platform, for example enabling declarative integration of 3D models.
- Enable navigation between XR experiences.
Out of Scope
The following features are out of scope, and will not be addressed by this Working group.
- Defining browser user experience inside virtual or augmented reality, aside from navigating between XR sites.
- Defining mechanisms for global-scale AR browsing.
Deliverables
More detailed milestones and updated publication schedules are available on the group publication status page.
text for keeping CR/CRS The group will advance its other documents to Candidate Recommendation (with Snapshots) and, when they are sufficiently mature, to Recommendation. As noted below, some documents (XXXX) have particular milestones for being published as Candidate Recommendations.
Draft state indicates the state of the deliverable at the time of the charter approval. Expected completion indicates when the deliverable is projected to become a Recommendation, or otherwise reach a stable state.
Normative Specifications
The Working Group will deliver the following W3C normative specifications:
- WebXR Device API
-
We will continue to maintain the core WebXR Device API but we don’t intend to add new features or make substantial changes.
This specification defines support for accessing virtual reality (VR) and augmented reality (AR) devices, including sensors and head-mounted displays, on the Web.
Draft state: Candidate Recommendation
Expected completion: Q3 2023
Adopted Working Draft: WebXR Device API (31 March 2022)
Produced under Working Group Charter: Previous charter period of the Immersive Web Working Group
Exclusion Draft: https://www.w3.org/TR/2022/CR-webxr-20220331/
associated Call for Exclusion on 2022-03-31, opportunity until 2022-05-30 - WebXR Gamepads Module - Level 1
-
We will continue to maintain the WebXR Gamepads Module but we don’t intend to add new features or make substantial changes.
This specification defines support for accessing button, trigger, thumbstick, and touchpad data associated with virtual reality (VR) and augmented reality (AR) devices on the Web.
Draft state: Working Draft
Expected completion: Q4 2023
Adopted Working Draft: WebXR Gamepads Module - Level 1 (24 August 2021)
Produced under Working Group Charter: Previous charter period of the Immersive Web Working Group
Exclusion Draft: https://www.w3.org/TR/2019/WD-webxr-gamepads-module-1-20191010/
associated Call for Exclusion on 2019-10-10 ended on 2020-03-08 - WebXR Augmented Reality Module - Level 1
-
We will continue to maintain the WebXR Augmented Reality Module but we don’t intend to add new features or make substantial changes.
This specification defines an expansion module of the WebXR Device API with the functionality available on AR hardware.
Draft state: Candidate Recommendation
Expected completion: Q2 2024
Adopted Working Draft: WebXR Augmented Reality Module - Level 1 (24 August 2021)
Produced under Working Group Charter: Previous charter period of the Immersive Web Working Group
Exclusion Draft: https://www.w3.org/TR/2022/CR-webxr-ar-module-1-20221101/
associated Call for Exclusion on 2019-10-10 ended on 2020-03-08 - WebXR Hit Test Module
-
We will continue to maintain the WebXR Hit Test Module but we don’t intend to add new features or make substantial changes.
This specification defines a method for performing hit tests against real world geometry to be used with the WebXR Device API.
Draft state: Working Draft
Expected completion: Q3 2024
Adopted Working Draft: WebXR Hit Test Module (31 August 2021)
Exclusion Draft: https://www.w3.org/TR/2021/WD-webxr-hit-test-1-20210831/
associated Call for Exclusion on 2021-08-31 ended on 2022-01-28
- WebXR DOM Overlays Module
-
This specification defines a mechanism for showing interactive 2D web content during an immersive WebXR session.
Draft state: Working Draft
Expected completion: Q4 2024
Adopted Working Draft: WebXR DOM Overlays Module (31 August 2021)
Exclusion Draft: https://www.w3.org/TR/2021/WD-webxr-dom-overlays-1-20210831/
associated Call for Exclusion on 2021-08-31 ended on 2022-01-28 - WebXR Lighting Estimation API Level 1
-
This specification enables developers to render augmented reality content that reacts to real world lighting with the WebXR Device API and the WebXR AR Module.
Draft state: Working Draft
Expected completion: Q4 2024
Adopted Working Draft: WebXR Lighting Estimation API Level 1 (9 September 2021)
Exclusion Draft: https://www.w3.org/TR/2021/WD-webxr-lighting-estimation-1-20210909/
associated Call for Exclusion on 2021-09-09 ended on 2022-02-06 - WebXR Hand Input Module - Level 1
-
This specification defines a method for enabling hand input to be used with the WebXR Device API.
Draft state: Working Draft
Expected completion: Q4 2024
Adopted Working Draft: WebXR Hand Input Module - Level 1 (24 August 2021)
Exclusion Draft: https://www.w3.org/TR/2020/WD-webxr-hand-input-1-20201022/
associated Call for Exclusion on 2020-10-22 ended on 2021-03-21 - WebXR Anchors Module
-
We will continue to maintain the WebXR Anchors Module but we don’t intend to add new features or make substantial changes.
This specification enables users of the WebXR Device API to specify poses in local coordinate systems that need to be updated to correctly reflect the evolving understanding of the world, such that the poses remain aligned with the same place in the physical world. These poses will persist inside sessions, but not across sessions.
Draft state: Editor's Draft
Expected completion: Q4 2024
Adopted Working Draft: Adopted from the Immersive Web CG
- WebXR Anchors Module - Level 2
-
This specification enables users of the WebXR Device API Anchors to have persistent Anchors between sessions.
Draft state: No Draft
Expected completion: Q4 2024
- WebXR Layers API Level 1
-
This specification defines methods for manipulating composition layers used with the WebXR Device API.
Draft state: Working Draft
Expected completion: Q2 2024
Adopted Working Draft: WebXR Layers API Level 1 (7 December 2021)
Exclusion Draft: https://www.w3.org/TR/2020/WD-webxrlayers-1-20201203/
associated Call for Exclusion on 2020-12-03 ended on 2021-05-02
- WebXR Raw Camera Access Module
-
This feature would enable predictable access to camera frame data for AR devices.
Draft state: Adopted from the Immersive Web CG
Expected completion: Q4 2023
Adopted Working Draft: Adopted from the Immersive Web CG
- Depth/Occlusion API
-
This feature would provide depth and occlusion data on AR devices.
Draft state: Working Draft
Expected completion: Q4 2024
Adopted Working Draft: WebXR Depth Sensing Module (31 August 2021)
Exclusion Draft: https://www.w3.org/TR/2021/WD-webxr-depth-sensing-1-20210831/
associated Call for Exclusion on 2021-08-31 ended on 2022-01-28 -
This feature would enable better control of experiences when users navigate from one XR experience to another.
Draft state: Adopted from the Immersive Web CG
Expected completion: Q4 2024
Adopted Working Draft: Adopted from the Immersive Web CG
-
This feature is to add a new HTML element to handle displaying 3D
This may become a recommendation to the WhatWG rather than being published under the Immersive Web Working Group
Draft state: No draft yet
Expected completion: Q4 2024
The Working Group also intends to work on the following Recommendation-Track deliverables, although it recognizes these Recommendations may not be completed before the end of this charter period. All work is expected to be incubated in the Immersive Web Community Group first. These deliverables are in rough priority order as of the start of the charter period, although the Chairs may reprioritize based on the consensus of the Working Group during the charter period.
- WebXR Real World Geometry Module
-
This specification enables access to real world geometry like planes and meshes to be used with the WebXR AR Module. It is possible this module will be split into multiple deliverables.
Draft state: Adopted from the Immersive Web CG
Expected completion: Q4 2024
Adopted Working Draft: WebXR Real World Geometry Proposal
The Working Group also may choose to deliver normative specifications for the following features, if there is consensus in the Working Group that they are ready to move to the Recommendation track after sufficient incubation in the Immersive Web CG.
- XR Capture Module
-
This feature would enable users to record their AR session directly to the device in a way that is opaque to the web site.
- Image Detection
-
This feature would enable access to image detection support on AR devices.
- Marker Detection
-
This feature would enable access to QR code marker detection support on AR devices.
- Face Detection
-
This feature would enable access to face detection support on AR devices.
- Gaze Tracking
-
This feature would provide data tracking the user's gaze, for example to provide foveal-rendering improvement features.
- Geo-alignment
-
This feature would facilitate geo-spatial AR data in the context of immersive web, to utilize geo alignment using coordinate system with geospatial orientation.
Other Deliverables
Other non-normative documents may be created such as:
- A registry of WebXR Gamepad assets, source library and schema.
- A common backend functionality simulation to enable Web Platform Tests..
- A polyfill of WebXR Device API VR functionality and WebXR Gamepad Module for browsers than support WebVR 1.1, or mobile devices with no WebVR/WebXR support..
- Use case and requirement documents;
- Test suite and implementation report for the specification;
- Primer or Best Practice documents to support web developers when designing applications.
Success Criteria
possible alternate text for keeping CR/CRS In order to advance to Candidate Recommendation and to add features after reaching Candidate Recommendation, each feature is expected to be supported by at least two independent interoperable implementations, which may be judged by factors including existing implementations, expressions of interest, and lack of opposition.
In order to advance to Proposed Recommendation, each normative specification is expected to have at least two independent interoperable implementations of every feature defined in the specification, where interoperability can be verified by passing open test suites, and two or more implementations interoperating with each other. [delate this sentence? dup to others] In order to advance to Proposed Recommendation, each normative specification must have an open test suite of every feature defined in the specification.
There should be testing plans for each specification, starting from the earliest drafts.
To promote interoperability, all changes made to specifications in Candidate Recommendation or to features that have deployed implementations should have tests. Testing efforts should be conducted via the Web Platform Tests project.
Each specification should contain sections detailing all known security and privacy implications for implementers, Web authors, and end users.
Each specification should contain a section on accessibility that describes the benefits and impacts, including ways specification features can be used to address them, and recommendations for maximising accessibility in implementations.
This Working Group expects to follow the TAG Web Platform Design Principles.
All new features should have expressions of interest from at least two potential implementors before being incorporated in the specification.
[dup to new test section?] To promote interoperability, all changes made to specifications should have tests.
Coordination
For all specifications, this Working Group will seek horizontal review for accessibility, internationalization, privacy, and security with the relevant Working and Interest Groups, and with the TAG. Invitation for review must be issued during each major standards-track document transition, including FPWD. The Working Group is encouraged to engage collaboratively with the horizontal review groups throughout development of each specification. The Working Group is advised to seek a review at least 3 months before first entering CR and is encouraged to proactively notify the horizontal review groups when major changes occur in a specification following a review.
Additional technical coordination with the following Groups will be made, per the W3C Process Document:
W3C Groups
- Immersive Web Community Group
- The Immersive Web Community Group will provide the WebXR Device API seed specification to begin the standards process. In addition, the Immersive Web Working Group plans to partner closely with the IWCG to incubate new features - in particular, incubation of features that are out of current scope for the Immersive Web Working Group will happen in the Community Group, and then be followed by future Immersive Web Working Group rechartering to include them in scope.
- Devices and Sensors Working Group
- The Devices and Sensors Working Group develops the Generic Sensor framework, which may provide valuable integration point with sensors that integrate with XR devices.
- Web Application Security Working Group
- The Web Application Security Working Group develops the Permissions API as well as guidance on the definition of powerful features, both of which might apply to the features provided by the WebXR Device API.
- Accessible Platform Architectures (APA) Working Group
- The APA Working Group will review deliverables for accessibility implications and help develop solutions, noting the following XR Accessibility User Requirements resource.
- Audio Working Group
- The Audio Working group develops the Web Audio API, which enables 3D audio spatialization. We expect users of the WebXR Device API to want to spatialize audio, and the two groups will work together to ensure this works for developers as well as examine how to better support this in the future.
- GPU For The Web Working Group
- The GPU for the Web Working Group develops the WebGPU Specification and the WebGPU Shading Language Specification, both of which might apply to the features provided by the WebXR Device API and modules.
- Web Platform Incubator Community Group
- The Web Platform Incubator Community Group provides a lightweight venue for proposing, incubating, and discussing new web platform features. The Immersive Web Working Group will incubate and work on new model element proposal that are within scope of WICG.
External Organizations
- Khronos Group
- The Khronos Group is in charge of the WebGL specification on which the WebXR Device API heavily relies for its operations. The Immersive Web Working Group will coordinate its roadmap with planned evolutions of WebGL. The Immersive Web Working Group will also track and coordinate with Khronos OpenXR standard initiative.
- Web3D Consortium
- The Web3D Consortium is in charge of the Extensible 3D (X3D) Graphics specification. X3D version 4 (X3D4) supports close integration with HTML5, and version 4.1 will add Mixed Augmented Reality capabilities for diverse virtual and augmented reality devices.
- Open Geospatial Consortium
- The Open Geospatial Consortium creates free, publicly available geospatial standards that enable new technologies. OGC also manages an agile and collaborative research and development process that anticipates and solves real-world geospatial challenges experienced by its members. One of the OGC working groups that is most relevant for Immersive Web focuses on development of GeoPose, an encoding specification to seamlessly express, record, and share the geographically-anchored position and 6 DOF orientation of objects in an entirely consistent manner across different applications, users, devices, services, and platforms which adopt the standard or are able to translate/exchange the GeoPose into another CRS. The Immersive Web Working Group will coordinate its roadmap with planned evolutions of relevant OGC standards, including but not limited to GeoPose.
Participation
To be successful, this Working Group is expected to have 6 or more active participants for its duration, including representatives from the key implementers of this specification, and active Editors and Test Leads for each specification. The Chairs, specification Editors, and Test Leads are expected to contribute half of a working day per week towards the Working Group. There is no minimum requirement for other Participants.
The group encourages questions, comments and issues on its public mailing lists and document repositories, as described in Communication.
The group also welcomes non-Members to contribute technical submissions for consideration upon their agreement to the terms of the W3C Patent Policy.
Participants in the group are required (by the W3C Process) to follow the W3C Code of Ethics and Professional Conduct.
Communication
Technical discussions for this Working Group are conducted in public: the meeting minutes from teleconference and face-to-face meetings will be archived for public review, and technical discussions and issue tracking will be conducted in a manner that can be both read and written to by the general public. Working Drafts and Editor's Drafts of specifications will be developed in public repositories and may permit direct public contribution requests. The meetings themselves are not open to public participation, however.
Information about the group (including details about deliverables, issues, actions, status, participants, and meetings) will be available from the Immersive Web Working Group home page.
Most Immersive Web Working Group teleconferences will focus on discussion of particular specifications, and will be conducted on an as-needed basis.
This group primarily conducts its technical work in GitHub issues and on the public mailing list public-immersive-web-wg@w3.org (archive). The public is invited to review, discuss and contribute to this work.
The group may use a Member-confidential mailing list for administrative purposes and, at the discretion of the Chairs and members of the group, for member-only discussions in special cases when a participant requests such a discussion.
Decision Policy
This group will seek to make decisions through consensus and due process, per the W3C Process Document (section 5.2.1, Consensus3). Typically, an editor or other participant makes an initial proposal, which is then refined in discussion with members of the group and other reviewers, and consensus emerges with little formal voting being required.
However, if a decision is necessary for timely progress and consensus is not achieved after careful consideration of the range of views presented, the Chairs may call for a group vote and record a decision along with any objections.
To afford asynchronous decisions and organizational deliberation, any resolution (including publication decisions) taken in a face-to-face meeting or teleconference will be considered provisional. A call for consensus (CfC) will be issued for all resolutions (for example, via email, GitHub issue or web-based survey), with a response period from one week to 10 working days, depending on the chair's evaluation of the group consensus on the issue. If no objections are raised by the end of the response period, the resolution will be considered to have consensus as a resolution of the Working Group.
All decisions made by the group should be considered resolved unless and until new information becomes available or unless reopened at the discretion of the Chairs.
This charter is written in accordance with the W3C Process Document (Section 5.2.3, Deciding by Vote) and includes no voting procedures beyond what the Process Document requires.
Patent Policy
This Working Group operates under the W3C Patent Policy (Version of 15 September 2020). To promote the widest adoption of Web standards, W3C seeks to issue Web specifications that can be implemented, according to this policy, on a Royalty-Free basis. For more information about disclosure obligations for this group, please see the licensing information.
Licensing
This Working Group will use the W3C Software and Document license for all its deliverables.
About this Charter
This charter has been created according to section 3.4 of the Process Document. In the event of a conflict between this document or the provisions of any charter and the W3C Process, the W3C Process shall take precedence.
Charter History
Charter Period | Start Date | End Date | Changes |
---|---|---|---|
Initial Charter | 24 September 2018 | 1 March 2020 | none |
Charter Extension | 9 March 2020 | 30 April 2020 | none |
Rechartered | 12 May 2020 | 1 June 2022 |
Added: WebXR Gamepads Module, WebXR Augmented Reality Module, WebXR Hit Test Module, WebXR DOM Overlays Module, WebXR Lighting Estimation Module, WebXR Hand Input Module, WebXR Real World Geometry Module, WebXR Anchors Module, WebXR Layers |
Charter Extension | 1 June 2022 | 1 September 2022 | none |
Rechartered | 8 July 2022 | 7 July 2024 |
Added: Raw Camera Access, Depth/Occlusion API, Navigation, WebXR Anchors Proposal Module - Level 2, Model Element |
Rechartered | [dd monthname yyyy] | [dd monthname yyyy] |
[description of change to charter, with link to new deliverable item in charter] Note: use the class |
Change log
Changes to this document are documented in this section.