gpt4 book ai didi

javascript - 在 Aframe 中跟踪传送位置的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-03 04:13:00 25 4
gpt4 key购买 nike

我正在使用aframe-teleport-controls我想知道跟踪用户位置的最佳方法是什么。

我一直在寻找,找到了两种方法来做到这一点。

1 - 我使用传送 Controller 的位置,这几乎是用户的位置。

var teleportControls = el.closest('a-scene').querySelector('[teleport-controls]');
var worldPos = new THREE.Vector3();
worldPos.setFromMatrixPosition(teleportControls.object3D.matrixWorld);
console.log(worldPos);

2 - 我在场景中定义一个相机元素并使用他的位置。

var teleportControls = el.closest('a-scene').querySelector('a-camera');
var worldPos = new THREE.Vector3();
worldPos.setFromMatrixPosition(teleportControls.object3D.matrixWorld);
console.log(worldPos);

我不确定这是一个好的做法,我怎样才能听到用户改变他的立场?

感谢您阅读本文。

最佳答案

当用户传送时, Controller 元素(而不是相机)将发出 teleport 事件(可在 source here 中找到)。检测这些事件的最简单方法是在事件冒泡时监听场景元素。

sceneEl.addEventListener('teleport', function (e) {
console.log(e.detail.oldPosition, e.detail.newPosition);
});

关于javascript - 在 Aframe 中跟踪传送位置的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44251136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com