swift 如何在手机移动时保持平面在原位?

ohtdti5x  于 2023-04-19  发布在  Swift
关注(0)|答案(1)|浏览(141)

我用VideoMaterial创建了一个平面,并将其放置在一个已识别的图像上。平面的锚是这样创建的:

let anchor = AnchorEntity(world: imageAnchor.transform)

这对于初始位置来说很好。但是我想让它在我移动手机的时候保持在原位,它没有。它也没有完全跟随手机,但是它在同一个方向移动。
我认为解决这个问题的方法是在didUpdate中不断更新锚的变换,但是更新到什么?我只有imageAnchor的当前变换,无法将其转换为世界坐标。我尝试使用未转换的平面,结果平面在一个完全错误的位置结束。

sqougxex

sqougxex1#

在RealityKit中跟踪原生和ARKit锚点

Native RealityKit的案例图像(组:字符串,名称:字符串)自动跟踪其目标(图像)。

AnchorEntity(.image(group: "ARGroup", name: "myImage"))

如果您更喜欢跟踪ARKit的ARImageAnchor,那么使用session(_:didUpdate:)委托方法。

AnchorEntity(anchor: arImageAnchor)

相关问题