如何在手机移动时保持平面不动?

问题描述 投票:0回答:1

我正在创建一个带有 VideoMaterial 的平面并将其放置在已识别的图像上。飞机的锚是这样创建的:

let anchor = AnchorEntity(world: imageAnchor.transform)

这适用于初始位置。但是我希望它在我四处移动手机时保持原位,但事实并非如此。它也不完全跟随手机,但它在同一个大方向上移动。

我认为解决这个问题的方法是在 didUpdate 中不断更新锚点的转换,但是更新到什么?我只有 imageAnchor 的当前变换,无法将其转换为世界坐标。我尝试在未转换的情况下使用它,但飞机停在了一个完全错误的地方。

swift arkit realitykit
1个回答
0
投票

在 RealityKit 中跟踪原生和 ARKit 锚点


Native RealityKit的case image(group: String, name: String)自动跟踪它的目标(image)。

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

如果你更喜欢跟踪 ARKit 的

ARImageAnchor
,那么使用session(_:didUpdate:)委托方法。

AnchorEntity(anchor: arImageAnchor) 
© www.soinside.com 2019 - 2024. All rights reserved.