C# 存储ARKit点云数据并检索以显示
我希望存储使用ARKit和Unity记录的点云数据,以便能够检索和显示原始记录的数据。假设我只是以Unity插件中包含的UnityPointCloudExample.cs脚本的方式显示点云数据。但是,当检测到并显示某个点时,我还会存储有关该点的一些相关信息。然后我完全关闭应用程序。当我再次打开应用程序时,我希望能够将数据重新加载到最初检测到的相对于相机的相同位置,这是否可能使用ARKit和Unity插件 我知道这需要存储一些关于相机相对于点位置的位置的信息,然后在重新启动应用程序时,需要在重新启动时相机的新位置和记录点的前一个会话中的位置之间进行某种转换,然后使用此信息将点放置在正确的位置。查看ARKit文档,我不确定如何使用本机接口实现这一点,更不确定如何使用Unity插件实现这一点。如果有人能告诉我unity插件或本机ARKit接口的元素,这些元素最容易实现上述功能,我将不胜感激C# 存储ARKit点云数据并检索以显示,c#,unity3d,augmented-reality,point-clouds,arkit,C#,Unity3d,Augmented Reality,Point Clouds,Arkit,我希望存储使用ARKit和Unity记录的点云数据,以便能够检索和显示原始记录的数据。假设我只是以Unity插件中包含的UnityPointCloudExample.cs脚本的方式显示点云数据。但是,当检测到并显示某个点时,我还会存储有关该点的一些相关信息。然后我完全关闭应用程序。当我再次打开应用程序时,我希望能够将数据重新加载到最初检测到的相对于相机的相同位置,这是否可能使用ARKit和Unity插件 我知道这需要存储一些关于相机相对于点位置的位置的信息,然后在重新启动应用程序时,需要在重新启
或者,如果这超出了ARKit/Unity插件当前状态的范围,那么解释这种情况的方式和原因也同样有帮助。谢谢 ARKit在AR跟踪首次开始时将原点设置为0,0,0。如果不定义上一次运行中的点与新运行中的点之间的关系,则无法使用上一次运行中的坐标在后续运行中正确重新加载AR场景 为了将以前的ARKit运行与新运行关联起来,我们可以使用地标,可以手动放置,也可以使用某种对象识别来检测。为了简单起见,假设我们正在手动放置地标 下面是允许我们在后续运行之间保存和恢复ARKit场景的管道
- 开始我们的ARKit应用程序的首次运行,以放置对象或玩游戏李>
- 允许它初始化李>
- 在我们的环境中,沿平坦的水平面选择两个参考点。例如,如果在室内,我们可以选择房间的两个角落。我们将使用这些点重新加载ARKit场景