我正在尝试使用空间锚 API 和他们网站上提供的示例来实现我自己的 iOS 项目。我非常密切地关注这些示例,但由于某种原因,当我尝试保存锚点时,我的应用程序崩溃了。Xcode 向我显示“在游戏对象上找不到 AR 锚”,然后发生 InvalidOperationException 异常。
我已经尝试调试并发现 SessionGetArAnchorPointerForId 返回 InPtr.Zero,它被解释为给定 GameObject 上缺少的 AR Anchor。当我尝试获取游戏对象的本机锚指针时发生错误。
public async void SaveAnchorInCloud(GameObject localAnchor)
{
localAnchor.AddARAnchor();//local Anchor is just a Cube instance
Debug.Log("Added AR Anchor to local Anchor");
CloudSpatialAnchor cloudAnchor = new CloudSpatialAnchor();
cloudAnchor.LocalAnchor = localAnchor.GetNativeAnchorPointer(); //error occures here
await this.cloudSession.CreateAnchorAsync(cloudAnchor);
Debug.Log("Cloud Anchor erstellt: " + cloudAnchor.Identifier);
}
我已经与空间锚点示例项目进行了比较,但我似乎无法发现云锚点的保存方式有什么不同。