XRPose: emulatedPosition 属性
XRPose 接口的只读属性 emulatedPosition 是一个布尔值,用于指示 pose 的 transform 的 position 分量是直接从 XR 设备获取的,还是根据其他来源模拟或计算得出的。
值
如果 pose 的位置是基于估算或来自直接传感器数据以外的来源计算得出的,则该布尔值为 true。如果位置完全基于直接传感器输入,则值为 false。
用法说明
XR 追踪系统主要有两种。基本的 XR 头显提供三自由度 (3DoF),追踪用户头部的俯仰、偏航和滚动。没有关于向前、向后或向侧面移动的信息。任何此类数据都来自其他来源,例如键盘或鼠标输入或游戏控制器。因此,该位置被认为是模拟的,所以 emulatedPosition 属性为 true。
相反,能够追踪向前、向后以及侧向移动的 XR 设备(六自由度 (6DoF) 设备)在确定用户位置时不需要任何来自其他来源的信息,因此 emulatedPosition 的值为 false。
同样的概念不仅适用于用户头部,也适用于任何物体。可以直接报告其位置的手部控制器,此属性的值也为 false。如果其位置是根据相对于另一个物体(例如,基于代表用户身体的模型)的偏移量计算得出的,则此值为 true。
此信息很重要,因为位置被模拟的设备可能会随着时间的推移相对于真实世界空间而产生偏移漂移。这是因为基于加速度计输入和模型的模拟位置倾向于引入随时间累积的微小误差。
规范
| 规范 |
|---|
| WebXR Device API # dom-xrpose-emulatedposition |
浏览器兼容性
加载中…