如何在 Aframe 中禁用跟踪位置
How to disable tracking position in Aframe
尝试禁用 occulus 上的跟踪位置,在上面找不到任何文档。
我搜索了位置跟踪,但框架中没有任何内容
https://github.com/aframevr/aframe/search?utf8=%E2%9C%93&q=tracking&type=
也许 THREE.JS?
从 0.8.0 开始,使用任何 built-in A-Frame 组件是不可能的。您可能正在寻找的是 look-controls
组件,它处理鼠标和耳机 rotation/position。
有一个选项可以完全禁用 HMD,但 none 只是关闭位置。您可以请求该功能或创建您自己的 look-controls
版本,但我会对此犹豫不决 — 它会使 HMD 用户的 VR 体验更不舒适。
快速破解:)
这段代码没有经过测试,但这里的想法:)
// html
<entity class="Camera__parent">
<camera class="Camera" />
</entity>
//js
const cameraParent = document.querySelector('.Camera__parent')
const camera = document.querySelector('.Camera')
function update() {
requestAnimationFrame(update)
cameraParent.object3D.position.y = -camera.object3D.position.y
}
if(AFRAME.utils.device.checkHasPositionalTracking())
update()
我不得不同意 Don 的观点,即在任何 6 DOF 设备上限制位置跟踪都会导致糟糕的用户体验,因为某些类型的移动是预期的;但总有试验的余地!
虽然没有内置到 A-Frame 中,但您可以考虑创建一个组件来重置位置(而且只有位置 - 如果您弄乱了矩阵变换,它们将覆盖所有变换 - 缩放、变换、旋转 - 在下面的三个 js 层)。
看起来下面的示例可能有效。您也可以从这里开始 glitch.com/edit/#!/aframe-parent-constraint 尽管我必须承认我在最后更新单个转换时遇到了困难。
尝试禁用 occulus 上的跟踪位置,在上面找不到任何文档。
我搜索了位置跟踪,但框架中没有任何内容
https://github.com/aframevr/aframe/search?utf8=%E2%9C%93&q=tracking&type=
也许 THREE.JS?
从 0.8.0 开始,使用任何 built-in A-Frame 组件是不可能的。您可能正在寻找的是 look-controls
组件,它处理鼠标和耳机 rotation/position。
有一个选项可以完全禁用 HMD,但 none 只是关闭位置。您可以请求该功能或创建您自己的 look-controls
版本,但我会对此犹豫不决 — 它会使 HMD 用户的 VR 体验更不舒适。
快速破解:)
这段代码没有经过测试,但这里的想法:)
// html
<entity class="Camera__parent">
<camera class="Camera" />
</entity>
//js
const cameraParent = document.querySelector('.Camera__parent')
const camera = document.querySelector('.Camera')
function update() {
requestAnimationFrame(update)
cameraParent.object3D.position.y = -camera.object3D.position.y
}
if(AFRAME.utils.device.checkHasPositionalTracking())
update()
我不得不同意 Don 的观点,即在任何 6 DOF 设备上限制位置跟踪都会导致糟糕的用户体验,因为某些类型的移动是预期的;但总有试验的余地!
虽然没有内置到 A-Frame 中,但您可以考虑创建一个组件来重置位置(而且只有位置 - 如果您弄乱了矩阵变换,它们将覆盖所有变换 - 缩放、变换、旋转 - 在下面的三个 js 层)。
看起来下面的示例可能有效。您也可以从这里开始 glitch.com/edit/#!/aframe-parent-constraint 尽管我必须承认我在最后更新单个转换时遇到了困难。