XRFrame - 为相关 VR 或 AR 场景的 XRSession 渲染一帧动画
XRFrame
是 WebXR 设备 API 的接口,它被传递到 requestAnimationFrame()
回调函数,并提供访问所需信息的权限,以便为相关 VR 或 AR 场景的 XRSession
渲染一帧动画。传达对象跟踪状态的事件也提供 XRFrame
引用作为其结构的一部分。
除了提供要为其渲染此帧的 XRSession
的引用之外,还提供了 getViewerPose()
方法以获得描述观看者在空间中的位置和方向的 XRViewerPose
,并且 getPose()
可用于创建一个描述了 XRSpace
相对于另一个 XRSpace
的相对位置的 XRPose
。
属性
session
只读
一个 XRSession
,此 XRFrame
为此对象描述了所有对象的跟踪详细信息。
方法
getPose()
返回一个 XRPose
对象,该对象表示两个指定的 XRSpace
对象之间的空间关系。
getViewerPose()
返回一个 XRViewerPose
,它描述了观看者在给定的 XRReferenceSpace
中的位置和方向。
规范
规范 | 状态 | 备注 |
---|---|---|
WebXR Device API XRFrame 的定义 |
工作草案 | 初始定义。 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 79 | 79 | 不支持 | 不支持 | 不支持 | 不支持 |
getPose() | 79 | 79 | 不支持 | 不支持 | 不支持 | 不支持 |
getViewerPose() | 79 | 79 | 不支持 | 不支持 | 不支持 | 不支持 |
session | 79 | 79 | 不支持 | 不支持 | 不支持 | 不支持 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 不支持 | 79 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
getPose() | 不支持 | 79 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
getViewerPose() | 不支持 | 79 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
session | 不支持 | 79 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |