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.

Join the Immersive Web Working Group.

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

Navigation

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

Model Element

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:

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
Expanded Scope with new type of devices, handling of 3D models, and navigation to follow emering industrial needs.

Rechartered [dd monthname yyyy] [dd monthname yyyy]

[description of change to charter, with link to new deliverable item in charter] Note: use the class new for all new deliverables, for ease of recognition.

Change log

Changes to this document are documented in this section.