跳到主要内容

如何手动创建 LOD(CLI)

本指南介绍如何使用 splat-transform CLI 工具为你的 Splat 手动创建 LOD 文件,并将其上传到 Arrival.Space。

何时使用此方法

虽然 Arrival.Space 在平台中提供了便捷的一键 LOD 生成功能,但在某些场景下,手动创建 LOD 更为合适:

  • 独立的 PLY 文件: 你有多个预缩减的 .ply 文件(例如来自外部工具或手动精简),想要将它们组合成 LOD 结构。
  • 精细控制: 你需要比一键功能更精细地控制缩减比例、分块大小或其他参数。
  • 离线处理: 你想在上传前在本地处理 LOD,或将 LOD 生成整合到你自己的流程中。
  • 超大场景: 对于超大规模的扫描数据,使用增加内存分配的本地处理可能更加可靠。
更偏好一键生成?

如果你只需要快速便捷的 LOD 设置,请查看一键 LOD 创建指南——它会在 Arrival.Space 中自动完成所有操作。

简要概述

  1. 创建你的 .ply 文件的缩减版本(或使用内置 LOD 的 .lcc 文件)
  2. 生成 LOD 结构:splat-transform [files] -l [level] output/lod-meta.json
  3. 压缩并上传到 Arrival.Space
  4. 通过预设选择器中的"编辑"按钮调整 LOD 设置

安装 splat-transform

安装指南可在 Splat Transform 指南部分找到。

1. 准备你的 LOD 文件

选项 A:使用 .lcc 文件

如果你有一个 .lcc 文件,它通常已经内置了所有 LOD 层级。你可以跳过下面的手动缩减步骤,直接进行输出生成。

选项 B:使用 .ply 文件

从你最高分辨率的 .ply 文件开始。 然后创建缩减版本——理想情况下每个版本比前一个小约 50%

8 GB 源文件示例:

my_splat_file.ply (8 GB) → LOD 0
my_splat_file_1.ply (4 GB) → LOD 1
my_splat_file_2.ply (2 GB) → LOD 2
my_splat_file_3.ply (1 GB) → LOD 3
my_splat_file_4.ply (512 MB) → LOD 4
my_splat_file_5.ply (256 MB) → LOD 5

2. 使用 splat-transform 生成 LOD 结构

为最终的 LOD 输出创建一个空的目标文件夹:

mkdir LOD_OUT

对于 .lcc 文件:

重要提示: 直接引用 .lcc 文件(而非 zip 归档文件)。.lcc 文件通常位于一个文件夹中,旁边有 .bin 文件(例如 data.binindex.binattrs.lcpcollision.lci)。

命令结构:

splat-transform [path-to-folder]/file.lcc [output-folder]/lod-meta.json

示例:

splat-transform ./my_scan_folder/data.lcc LOD_OUT/lod-meta.json

这将在 LOD_OUT/ 文件夹中创建 lod-meta.json 和所有 LOD 分块。

对于多个 .ply 文件:

将文件名替换为你实际的 .ply 文件路径:

splat-transform \
my_splat_file.ply -l 0 \
my_splat_file_1.ply -l 1 \
my_splat_file_2.ply -l 2 \
my_splat_file_3.ply -l 3 \
my_splat_file_4.ply -l 4 \
my_splat_file_5.ply -l 5 \
LOD_OUT/lod-meta.json

这会将 lod-meta.json 文件和相应的 LOD 分块写入 LOD_OUT/ 目录。

对于超大场景

如果命令因超大场景而出现内存不足错误,你可以增加 Node.js 的内存分配:

node --max-old-space-size=32000 node_modules/.bin/splat-transform \
my_splat_file.ply -l 0 \
my_splat_file_1.ply -l 1 \
my_splat_file_2.ply -l 2 \
my_splat_file_3.ply -l 3 \
my_splat_file_4.ply -l 4 \
my_splat_file_5.ply -l 5 \
LOD_OUT/lod-meta.json

3. 上传到 Arrival.Space

压缩 LOD 文件夹:

zip -r LOD_OUT.zip LOD_OUT/
  • 在 Arrival.Space 中以"+ 内容"的形式上传 LOD_OUT.zip
  • (推荐) 上传到新空间中,以保持整洁有序

4. 调整 LOD 设置

将 LOD 上传到 Arrival.Space 后,你可以直接在平台中微调 LOD 设置(范围、预设等)。请参阅 LOD 创建指南 - 调整流式传输设置,了解如何为桌面和移动设备配置预设的详细说明。


更多资源