如何知道 AR space 中的对象位置? (桌面和移动设备之间的行为不一致)

How to know object position in AR space? (inconsisten behavior between desktop and mobile)

我正在尝试使用 8th Wall(用户单击时选择的新位置)将一个元素移动到 Unity 中的另一个位置,但该元素的方向不正确。 在桌面上一切正常,但一旦我进入 AR 模式,行为就会不一致。有没有办法知道AR模式下的元素位置?

Update() 循环中使用的代码:my3DObject.transform.position = Vector3.Lerp(originalLocation.position, elementSelectedByUser.position, fractionOfJourney);

首先,您不应该为此使用 Lerp,而应该使用 SmoothDamp。根据帧率 Lerp 是不一致的,并且永远不会真正达到像这样使用的目标。

其次,由于您尝试移动的两个项目都是单父项的子项并且彼此相对移动,因此使用 position 可能会产生意想不到的后果。例如,这里的插值发生在世界坐标中,这意味着如果相机移动,原始位置可能会远离父对象。仅使用局部坐标可能会解决这个问题。