使用 session 验证工具模拟运行使用 Mega 能力的 AR 工程
本文旨在指导开发者如何在 Unity 编辑器上利用 session 验证工具加载录制的 EIF 数据,模拟运行使用 Mega 能力的 AR 工程。
开始之前
为什么用 session 验证工具模拟运行是个好办法
远程开发:无需顶着烈日或严寒驻场,利用 EIF 数据,在办公室就能开发基于大规模地理空间的 AR 应用。
跨平台调试:无需频繁连接各种移动设备,在 PC 上即可模拟手机、头显等不同终端的定位和跟踪效果。
问题反馈的“金标准”:一个能够复现异常的 EIF 文件,是 EasyAR 团队解决定位与跟踪问题的关键依据。
注意
尽管 EIF 数据记录得非常精确,模拟效果和实际使用效果可能依然存在差异。
并且模拟数据对现场的覆盖有限,在最终发布前务必进行实地测试。
准备现场录制的 EIF 文件
根据所选录制格式不同,录制好的EIF数据应为 .mkveif 文件(或 .eif 文件和 .eif.json 文件,这两个文件缺一不可)。
.eif 和 .eif.json:

.mkveif:

开启 session 验证工具
点击场景中的 AR Session (EasyAR) > 确认其 Inspector 面板上的 Frame Player 已经开启。

运行
点击工具栏按钮或点击 Session Validation Tool 上的运行按钮在 Unity 编辑器上开始运行当前场景。

运行后会弹出一个提示框,这是正常的,它只是提示现在正在使用 Frame Player。

点击工具上的按钮打开 EIF 文件。

正常打开后它会自动播放,可以使用工具栏进行暂停/继续等控制,正常录制完成的 mkveif 文件支持进度条跳转。

运行效果:
若加载了 block 稠密模型,block 稠密模型也会保持显示。这在进行位置比对或未放置模型的地方查看定位效果的情况下还是有用的。
如果关闭 block 模型显示,看到的就是在现实场景中叠加了虚拟物体的效果。
重要事项
在使用时,一定会注意到运行时显示在屏幕上或目视前方的诊断信息文字,仔细阅读 UI 消息输出,仔细斟酌在开发阶段、测试阶段、应用上线之后应该采取何种配置,以及保留何种控制开关。与 EasyAR 的沟通通常需要提供这些信息,建议多利用而不是立马关闭。
默认设置下,启动后,在第一次定位到 block 之前内容不会显示。

在定位到之后,block 节点的 active 会变成 true,内容会显示出来并不断更新位置。

可以通过 ActiveController 组件选项来控制这个行为。
[可选] 使用全景图
注意
部分数据不支持全景图。
在运行时,可以点击 Panorama Preview Marker 选择框,显示全景标记,

点击任意一个全景标记,即可看到全景图的预览效果。
提示
- 编辑器进入 play 模式后,基于 mesh 的空间模型遮挡依旧有效,但精度受 LOD 切换禁用影响。
- 全景图窗口中,可以操作相机旋转,但不能进行缩放和移动。
- 全景图窗口中,可以移动到不同位置的全景图视图。
[可选] 使用 LCC 3D 高斯泼溅
注意
本段内容适用于使用其域设备采集并完成建图后的使用场景。使用其它设备建图结果中不包含 LCC 3DGS 数据。
如果您使用了 LCC 3D 高斯泼溅(其域 LCC)功能,可以在模拟运行时同时渲染 3DGS 的结果,以查看模型与 3DGS 的对齐效果。
首先需要加载 LCC 数据并与 Mesh 对齐。
如果 Camera 上存在 SceneGameCameraSync 脚本,需将其 Disable。
在渲染 3DGS 的同时播放 EIF 文件模拟运行的效果如下:

