3D Tiles 格式中,Bounding Volum

3D Tiles 格式中,Bounding Volum

在 3D Tiles 格式中,Bounding Volum (包围体),是空间索引的核心机制,它通过层级化的空间范围定义,实现大规模三维数据的高效加载与渲染,

Bounding Volum 是什么?

  • 空间包裹盒:每个瓦片 (Tile)包含一个几何体(如盒子,球体或区域),用于精确描述该瓦片内所有模型数据的空间范围
  • 层级嵌套结构 :在瓦片金字塔中,父瓦片的Bounding Volum 完全包含其子瓦片的 Bounding Volum,形成树状空间索引。

核心作用与功能

  1. 视锥体剔除
  • 原理 : 相机渲染时,快速检测瓦片的 Bounding Volum 是否在视锥体可见范围内
  • 效果 : 仅加载并渲染可见范围内的瓦片(例如:相机背面的建筑瓦片直接跳过)
  • 减少GPU渲染压力,提升帧率(尤其对城市级模型)。
  1. 细节层级控制 (LOD切换)
  • 原理 : 根据瓦片与相机之间的距离,计算其在屏幕上投影大小 (屏幕空间误差,SSE)
  • 效果 : 距离远 ,使用低精度瓦片 (父级 Bounding Volum 粗略包裹)
    距离近, 加载高精度瓦片 (子级Bounding Volum 精细包裹)
  • 避免不必要的细节加载,(如:1公里外的树木,用点云代替精细模型)
  1. 碰撞检测与空间查询
    原理:通过Bounding Volum 快速判断物体与瓦片的交集,(如:射线拾取,车辆碰撞)
    高效支持交互操作,如点击建筑查询属性。

实际效果与性能优化

  1. 加载速度提升,仅请求可见瓦片,减少网络传输量(如100平方千米倾斜摄影数据,实际加载 小于 1 平方千米的瓦片)。
  2. 渲染效率飞跃 : 剔除 70% - 90%不可见瓦片,(实测:百万级建筑场景,帧率从 5fps - 60 fps)
  3. 内存占用优化 :动态卸载视锥体外的瓦片,避免浏览器崩溃。
    如Cesium的LRU缓存策略。
总结

Bounding Volume 是 3D Tiles中定义瓦片空间范围几何体 (BOX,Sphere,Region)

用于构建空间索引层级。

核心作用
  • 视锥剔除 : 跳过不可见瓦片,提升渲染效率;
  • LOD 控制:动态切换瓦片精度,平衡画质与性能
  • 空间查询:支持快速碰撞检测与属性交互,解决海量三维数据的实时加载问题,使城市级,全球级三维可视化成为可能
相关推荐
Jackson_GJH1 天前
3D 建模入坑指南:NURBS 与 Polygon 有什么区别?CAD 与 DCC 怎么选?
3d
CV实验室1 天前
Meta引爆3D革命!SAM 3D 发布:单张图秒建3D模型,AR/VR、游戏圈炸锅!
计算机视觉·3d·meta·ar·vr
星河耀银海1 天前
3D效果:HTML5 WebGL结合AI实现智能3D场景渲染
前端·人工智能·深度学习·3d·html5·webgl
全栈若城1 天前
HarmonyOS 6 实战:Component3D 与 SURFACE 渲染模式深度解析
3d·架构·harmonyos6
KaGme1 天前
生成3DGS场景在unity中的呈现
3d·unity·游戏引擎
全栈若城1 天前
HarmonyOS 6 实战:使用 ArkGraphics3D 加载 GLB 模型与 Scene 初始化全流程
3d·华为·架构·harmonyos·harmonyos6
li99yo1 天前
3DGS的复现
图像处理·pytorch·经验分享·python·3d·conda·pip
王码码20351 天前
Flutter for OpenHarmony 实战之基础组件:第五十二篇 ListWheelScrollView — 打造极致丝滑的 3D 滚轮选择器
flutter·3d·harmonyos
CG_MAGIC2 天前
3ds Max 建筑外立面:批量复制与阵列技巧
3d·建模教程·渲云渲染·3d软件
@猪大肠2 天前
SolidWorks2025 安装教程+附下载链接
平面·3d