Table of Contents

使用其域 LCC 3D 高斯泼溅数据

本文档介绍如何在 Unity 编辑器中对齐其域 LCC 3D 高斯泼溅数据到 block mesh,以辅助应用开发。

重要事项

本文仅适用于使用其域设备采集并完成建图后,需要在 Unity 编辑器中同时加载并浏览 Mesh 与 LCC 3DGS 的用户。使用其它设备建图结果中不包含 LCC 3DGS 数据,无法使用本文档介绍的方法加载 LCC 3DGS。

开始之前

重要事项

由于其域会修改其数据及 SDK 行为,如下面描述与官方文档不一致,请以其域官方文档为准。

如果您在使用其域 LCC 3DGS 数据时遇到问题,请联系其域技术支持。

LCC 3DGS 与 Mesh 数据对齐

Unity 编辑器中使用 Mega 工具加载并渲染 Mesh,同时使用 LCC SDK 加载并渲染 LCC 3DGS。

配置 LCC SDK 组件

在 Hierarchy 中添加 LCC Unity SDK 提供的组件 LCC Manager 和 LCC Renderer。

将 LCC Renderer 拖到对应的 Block 节点下作为其子节点,使 LCC 3DGS 相对 Block 的 Transform 保持不变。

然后修改 LCC Renderer 的 Transform:

  • Position 修改为 (0, 0, 0)
  • Rotation 修改为 (-90, 0, 0)
  • Scale 修改为 (-1, 1, 1)

LCC Components

重要事项

根据其域官方文档说明,由于底层数据坐标系定义与 Unity 有差异,必须按照 LCC 官方 Sample 中的做法修改 LCC Renderer 的 Transform 的 Rotation以及 Scale,否则 3DGS 无法与 Mesh 对齐。

如果其域数据坐标系发生变化,导致上述修改之后数据仍无法对齐,请联系其域技术支持解决。EasyAR 数据坐标系定义通常不会发生变化。

为 Camera 添加编辑器场景相机同步脚本

在场景相机上添加 LCC Unity SDK Sample 中提供的脚本 SceneGameCameraSync。

Add SceneGameCameraSync

重要事项

在编辑模式下需要通过此脚本同步编辑器场景相机的位姿和 FOV 才能渲染 3DGS。 在运行模式下必须 Disable 此脚本。

完成上面操作之后,即可在同时加载 3DGS 和 Mesh 之后对齐两个数据。这时可以检查 3DGS 是否与 Mesh 对齐,数据对齐后,3DGS 的渲染结果应该与 Mesh 的渲染结果完全重合。

Mesh and 3DGS

同时渲染 3DGS 和 Mesh 虽然可行,但视觉效果会互相干扰,摆放内容时建议只显示其中一个。

查看 LCC 3D 高斯泼溅

在需要查看 LCC 3DGS 的场景中,建议隐藏 Mesh 后仅显示 3DGS 渲染结果以避免 Mesh 对视觉的干扰。

取消 Mesh 选项,隐藏 Mesh。

隐藏 Mesh

然后在 LCC Renderer Inspector 面板中填入 LCC 文件的正确路径后点击右上角更多 (⋮) 按钮 > 点击 Render,触发 3DGS 渲染。

Render LCC

此时仅显示 3DGS 渲染结果。

仅显示 3DGS 渲染结果

查看 3D 实景网格

查看 3D 实景网格可以更方便地进行内容标注等操作。

在 LCC Renderer Inspector 面板中点击右上角更多 (⋮) 按钮 > 点击 unRender,停止 3DGS 渲染。

unRender LCC

选择 Mesh 选项,显示 Mesh。

显示 Mesh

此时编辑器中仅渲染 Mesh。

Mesh Only

相关主题