This API is an extension to the WebXR Device API that provides a way to indicate to the underlying XR system that a 3D pose is meant to be kept up to date. Tracked poses may be arbitrary or attached to real world geometry. In current AR systems, poses evolve over time as the system understands more of the real world that surrounds it. As the system's understanding evolves, anchors enable the application to update poses of virtual objects so that they maintain their relationship to real world.

Motivation

AR systems provide a way to know an estimation of a device pose (position and orientation) in the real world with high accuracy. These systems evolve the accuracy of the pose as time goes by and as more information about the real world is provided. These changes in the estimation of the pose of the device are not usually transmitted to the application level. Instead, AR systems provide a way for the app to indicate poses that are relevant for the app (e.g., where virtual objects are placed) and let the system handle a way to make corrections to those poses as the device’s main pose is updated. As AR systems do not expose the pose changes directly and instead provide notifications by these anchoring mechanisms, web apps also need to be able to specify poses to be updated by the system. Without anchors, virtual objects placed in reference to the real world could drift from their reference position performing unexpected jumps of position. While this may not be relevant for all experiences, it is best if developers are in the habit of always using anchors to provide the best experience for users across clients and use cases.

Demos

Documentation

Specification

Specification link


Specification being incubated in a Community Group

Status in Chromium

Blink>WebXR


In developer trial (Behind a flag) (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.

Owner

Intent to Prototype url

Intent to Prototype thread

Search tags

AR, XR,

Last updated on 2021-06-28