Update from Sync Service

This commit is contained in:
FNS Service
2026-05-14 16:28:27 +08:00
parent 0f840fb3ec
commit eb80b7a8c1
3 changed files with 309 additions and 0 deletions

View File

@@ -0,0 +1,169 @@
# Web3DGS 技术调研汇报总结
---
## 一、核心结论Executive Summary
**推荐方案SuperSplat / PlayCanvas**
综合数据处理效率、渲染性能、渲染质量、功能完整性四个维度SuperSplat 在各项对比中表现最优,建议作为项目的高斯泼溅渲染引擎。
---
## 二、技术背景
### 2.1 什么是 3DGS
3D Gaussian Splatting3DGS是一种革命性的实时辐射场渲染技术将3D场景表示为大量微小的"高斯形状斑点"Splat集合通过可微光栅化实现实时高质量渲染。相比 NeRF 方法3DGS 兼具训练速度和渲染速度的优势。
### 2.2 Web端核心挑战
| 挑战 | 说明 |
| ----- | -------------------- |
| 内存限制 | 浏览器可用内存远小于原生应用 |
| 带宽限制 | 百万级Splat数据传输成为瓶颈 |
| 渲染算力 | WebGL/WebGPU并行计算能力受限 |
| 跨平台兼容 | 桌面、移动、VR设备算力差异巨大 |
### 2.3 LOD 技术的关键作用
LOD细节层级是解决上述挑战的核心技术实现
- **场景规模扩展**使亿级Splat超大场景渲染成为可能
- **设备适配**:根据设备性能动态调整渲染负载
- **带宽优化**:通过流式加载减少初始等待时间
- **帧率稳定**:保持恒定渲染复杂度,避免性能抖动
---
## 三、主流方案对比
### 3.1 方案概览
| 方案 | 类型 | 技术栈 | 特点 |
| :-------------------------: | :------: | :------------------------: | :-------------------: |
| **Spark 2.0** (World Labs) | 开源Web渲染器 | Three.js + WebGL2 | 连续LOD、GPU虚拟显存、亿级Splat |
| **LCC** (XGRIDS) | 商业化SDK | 多平台SDK | 空间分块+LOD耦合、Cesium集成 |
| **SuperSplat** (PlayCanvas) | 开源编辑器+引擎 | PlayCanvas + WebGL2/WebGPU | SOG格式、碰撞检测、轻量易用 |
| **Visionary** | 学术研究 | WebGPU + ONNX | 每帧推理、插件式架构 |
| **gsplat.js** | 开源通用库 | 类Three.js API | 轻量级、基础LOD支持 |
| **FJD Trion** (丰疆) | 商业软件 | 专有格式 | 需授权,未试用 |
### 3.2 核心差异对比
| 维度 | Spark 2.0 | LCC | SuperSplat |
| --------- | ------------------------ | ---------- | ------------------ |
| **渲染预算** | 固定预算桌面2.5M/移动500K~1.5M | 分块LOD机制 | 全局预算管理 |
| **文件格式** | .RAD渐进式传输 | .lcc紧凑编码 | .sog空间有序 |
| **内存管理** | GPU虚拟显存分页 | 压缩+LOD优化 | gsplat.splatBudget |
| **LOD类型** | 连续LOD树切面 | 离散LOD+空间分块 | 离散LOD流式分块 |
| **碰撞检测** | 不支持 | 需自行实现 | 内置体素碰撞数据生成 |
| **最大场景** | 1亿+Splat | 80万㎡场景验证 | 千万级Splat |
---
## 四、实测数据
### 4.1 测试场景
| 场景 | 大小 | 来源 | 类型 |
| ---- | ----- | ------- | ----- |
| 西北大学 | 2.12G | LCC官方示例 | 外部大场景 |
| 书店 | 404M | LCC官方示例 | 内部小场景 |
| 教堂 | 776M | LCC官方示例 | 外部小场景 |
| 台阶 | 1.38G | 中海达数据 | 外部场景 |
### 4.2 测试设备
- **低性能台式机H**i7-9700 + AMD Radeon R7 430
- **高性能台式机**i9-10900K + RTX3070
- **笔记本W**i7-9700 + AMD Radeon R7 430
### 4.3 数据处理效率
| 方案 | 台阶场景处理时间 | 备注 |
|------|-----------------|------|
| Spark 2.0 | 较长Rust源码需二次开发 | 部分PLY兼容性有问题 |
| LCC | ~10秒LCCEditor | 存在视觉跳变问题 |
| SuperSplat | 需二次开发Node.js库 | 支持碰撞数据生成 |
**碰撞数据生成时间**笔记本W
- 书店场景:~2分钟
- 教堂场景:~3分40秒
### 4.4 渲染性能排名
**相同场景、相同模式、相同设备下:**
1. **SuperSplat** — 性能最佳
2. **LCC** — 与SuperSplat基本相当部分情况略逊
3. **Spark 2.0** — 性能表现最差
> LCC2在不同性能模式下表现基本无变化可能有额外处理逻辑。
### 4.5 渲染质量对比
| 问题 | Spark 2.0 | LCC | SuperSplat |
|------|-----------|-----|------------|
| 视觉跳变 | 无 | 有(旋转视角出现模型漏洞) | 无 |
| 性能模式模糊 | 正常 | 模糊 | 性能模式下模糊,标准及以上正常 |
| 放大细节 | 可加载清晰细节 | 模糊 | 可加载清晰细节 |
### 4.6 功能对比
| 功能 | Spark 2.0 | LCC | SuperSplat |
| -------- | --------- | ---------- | ----------- |
| 碰撞检测数据生成 | 不支持 | 需自行实现 | 内置支持(体素八叉树) |
| 第一人称行走 | 需自行实现 | 有API但需自行实现 | 内置支持 |
| 点云渲染 | 不支持 | 不支持 | 引擎支持 |
| Cesium集成 | 不支持 | 支持 | 不支持 |
---
## 五、技术趋势
1. **连续LOD替代离散LOD**:消除视觉跳变,实现无缝过渡
2. **流式传输标准化**:先展示低精度全局视图,再逐步细化
3. **WebGL向WebGPU迁移**计算着色器开启更复杂LOD算法可能
4. **空间分块与LOD深度融合**:特别适合大地图、城市级实景
5. **AI驱动智能LOD**神经网络动态预测最优LOD配置
---
## 六、推荐方案及理由
### 选择 SuperSplat 的核心理由
1. **渲染性能最优** — 实测FPS最高CPU/GPU耗时最低
2. **碰撞检测内置** — 支持体素碰撞数据生成+第一人称行走
3. **无视觉跳变** — 渲染质量稳定无LCC的旋转漏洞问题
4. **传输最快** — LOD数据最小场景初始化最快
5. **开源生态** — MIT协议PlayCanvas引擎成熟
### 待解决问题
| 问题 | 说明 |
| ------- | -------------------------------------------- |
| LOD生成效率 | @playcanvas/splat-transform 需二次开发当前为Node.js |
| 碰撞数据质量 | 生成数据质量需进一步研究优化 |
| 点云渲染 | 引擎支持但Demo未实现 |
| GIS大场景 | Cesium对3DGS LOD支持不足仅LCC支持Cesium集成 |
| 浏览器适配 | 不同手机和PC 浏览器兼容有差异 |
| | |
---
## 七、Hi-LiDAR 数据处理发布流程
已基于 @playcanvas/splat-transform 搭建3DGS在线数据处理和演示系统
1. **数据接收** — 接收Hi-LiDAR推送 / 支持模型上传
2. **LOD处理** — 支持自动/手动生成LOD数据
3. **模型管理** — 在线预览和发布管理
4. **分享能力** — 链接分享 + 二维码扫码在线查看
5. **用户管理** — 集成中海达会员系统
**Demo演示地址**http://172.16.36.73:8092/
---
*汇报完毕,请审阅。*