XRAnchor

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

安全上下文: 此项功能仅在一些支持的浏览器安全上下文(HTTPS)中可用。

实验性: 这是一项实验性技术
在将其用于生产之前,请仔细检查浏览器兼容性表格

XRAnchor 接口用于创建跟踪相对于真实世界的固定姿势的锚点。借助锚点,你就可以指定世界中需要更新的姿势,以正确反映对世界不断发展的理解,从而使姿势与物理世界中的相同的位置对齐。这有助于构建一种错觉,让放置的对象看起来真实存在于用户的环境中。

实例属性

XRAnchor.anchorSpace 只读 实验性

返回一个 XRSpace 对象,来确定锚点相对于其他 XRSpace 对象的位置。

实例方法

XRAnchor.delete() 实验性

移除锚点。

示例

请求启用锚点会话

js
navigator.xr.requestSession("immersive-ar", {
  requireFeatures: ["anchors"],
});

添加锚点

你可以使用 XRFrame.createAnchor() 来创建锚点。

js
frame.createAnchor(anchorPose, referenceSpace).then(
  (anchor) => {
    // 对锚点进行操作(分配将相对于此锚点的对象)。
  },
  (error) => {
    console.error(`无法创建锚点:${error}`);
  },
);

规范

Specification
WebXR Anchors Module
# xr-anchor

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
XRAnchor
Experimental
anchorSpace
Experimental
delete
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.
See implementation notes.

参见