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 控制:动态切换瓦片精度,平衡画质与性能
  • 空间查询:支持快速碰撞检测与属性交互,解决海量三维数据的实时加载问题,使城市级,全球级三维可视化成为可能
相关推荐
文火冰糖的硅基工坊7 小时前
[光学原理与应用-353]:ZEMAX - 设置 - 可视化工具:2D视图、3D视图、实体模型三者的区别,以及如何设置光线的数量
3d·系统架构·设计·zemax·光学·跨学科融合
dxwd3209 小时前
试用Augment编写python脚本实现智能家居3D环境交互响应
人工智能·3d·智能家居·blender
小白学过的代码9 小时前
基于3dtitle模型无法双面渲染问题
3d
元让_vincent9 小时前
论文Review 3DGS HAC | ECCV2024 上海交大 莫纳什大学| 数10倍的3DGS模型压缩
3d·图形渲染·模型压缩·3dgs
一碗白开水一10 小时前
【论文阅读】Sparse4D v3:Advancing End-to-End 3D Detection and Tracking
论文阅读·人工智能·目标检测·3d·自动驾驶
AiTop10010 小时前
腾讯混元世界模型Voyager开源:单图生成3D世界的“核弹级”突破,游戏、VR、自动驾驶迎来新变量
人工智能·游戏·3d·aigc·vr
Altair.Xing10 小时前
3D语义地图(3D Semantic Mapping)研究现状
3d
多恩Stone10 小时前
【3D 入门-4】trimesh 极速上手之 3D Mesh 数据结构解析(Vertices / Faces)
数据结构·人工智能·python·3d
多恩Stone10 小时前
【3D 入门-3】常见 3D 格式对比,.glb / .obj / .stl / .ply
人工智能·pytorch·python·深度学习·3d
深蓝学院1 天前
[ICCV25]TRACE:用3D高斯直接学习物理参数,让AI“推演”未来场景
人工智能·学习·3d