XRView:isFirstPersonObserver 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

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

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

XRView 接口的只读 isFirstPersonObserver 属性是一个布尔值,用于指示 XRView 是否为第一人称观察者视图。

要创建 AR 设备摄像头的视频录制,您不能简单地使用渲染出的眼睛之一,因为通常会有物理偏移。某些设备会公开一个次要视图,即第一人称观察者视图,该视图的 eyenone

要接收第一人称观察者视图,您需要显式启用“secondary-views”功能描述符(通常作为可选功能)。有关详细信息,请参阅 XRSystem.requestSession()

然后,isFirstPersonObserver 属性允许您检查哪个次要视图是第一人称观察者视图。

示例

检查第一人称观察者视图

js
// Make sure to enable "secondary-view"
navigator.xr
  .requestSession("immersive-ar", {
    optionalFeatures: ["secondary-views"],
  })
  .then((session) => {
    // …

    session.requestAnimationFrame((frame) => {
      const views = frame.getViewerPose(space);
      // Make sure to iterate over all views
      for (const view of views) {
        if (view.isFirstPersonObserver) {
          renderFPO();
        } else {
          render();
        }
      }
    });
  });

规范

规范
WebXR 增强现实模块 - Level 1
# dom-xrview-isfirstpersonobserver

浏览器兼容性