VRPose:linearVelocity 属性
已弃用:此功能不再推荐。尽管某些浏览器可能仍然支持它,但它可能已从相关 Web 标准中删除,可能正在被删除,或者可能只是出于兼容性目的而保留。避免使用它,并尽可能更新现有代码;请参阅此页面底部的兼容性表,以指导您的决策。请注意,此功能可能随时停止工作。
非标准:此功能是非标准的,不在标准轨道上。请勿在面向 Web 的生产站点上使用它:它不会对所有用户起作用。实现之间也可能存在很大的不兼容性,并且行为将来可能会发生变化。
linearVelocity
是 VRPose
接口的只读属性,它返回一个数组,表示当前时间戳下 VRDisplay
的线性速度向量,单位为米/秒。
注意:此属性是旧版WebVR API 的一部分。它已被WebXR 设备 API 取代。
换句话说,传感器沿 x
、y
和 z
轴移动的当前速度。
价值
一个 Float32Array
,如果 VR 传感器无法提供线性速度数据,则为 null
。
示例
js
// rendering loop for a VR scene
function drawVRScene() {
// WebVR: Request the next frame of the animation
vrSceneFrame = vrDisplay.requestAnimationFrame(drawVRScene);
// Populate frameData with the data of the next frame to display
vrDisplay.getFrameData(frameData);
// Retrieve the linear velocity values for use in rendering
// curFramePose is a VRPose object
const curFramePose = frameData.pose;
const linVel = curFramePose.linearVelocity;
const lvx = linVel[0];
const lvy = linVel[1];
const lvz = linVel[2];
// render the scene
// …
// WebVR: submit the rendered frame to the VR display
vrDisplay.submitFrame();
}
规格
此属性是旧版 WebVR API 的一部分,已被 WebXR 设备 API 取代。它不再处于成为标准的轨道上。
在所有浏览器都实现新的WebXR API 之前,建议依赖于框架(如 A-Frame、Babylon.js 或 Three.js),或polyfill 来开发可在所有浏览器中运行的 WebXR 应用程序 [1]。
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。