3D Tiles

3D Tiles

Cesium为了实现大数据的显示,提供了一种数据格式。便于网络流传输,GPU的渲染。

 

3D Tiles是一个开源的项目,用来是管理3D大数据流。用在Cesium的地形数据和影像数据流,还有常用的建筑,树木、点云和矢量数据等。

 

 

 

3D Tiles定义了一个空间的数据结构,这种格式就是为了帮助在3D程序中的数据流和渲染上。模型格式为glTF

 

Cesium中加载3D Tiles数据非常简单:

var viewer = new Cesium.Viewer('cesiumContainer');var tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({

    url : '/path/to/3d/tileset'}));

 

 

1. 开源的

3D Tiles 是基于Cesium的一个开源工程,我们希望看到其他3D引擎和转换工具可以使用3D Tiles

 

 

2. 对数据流和渲染的优化

3D Tiles主要的目的就是在数据流和渲染性能在大规模异构数据的提升。3DTiles使用的空间数据结构是Hierarchical Level of Detail (HLOD),用于实现只有那些在3d视图中可见的tiles被渲染。Tiles使用二进制和上下文共享的压缩方式如Open3DGC或者oct-encoding

 

3D Tiles的设计团队使用WebGLOpenGL多年,因此,3D Tiles用在WebGL的渲染管线中可快速简单呈现,并尽量减少客户端处理量。减少WebGL绘制的数量,Tiles可以分批次或者批量的动态加载。

 

3. 3D而设计的

从头开始,3D Tiles的设计就是为了3D场景中可以实现自由相机的渲染。它并不在局限于2.5D的视角的方案了。

 

3D Tiles中,包围盒是3D的而不是2D地图样式的。在2D中,瓦片的解决方案通常是基于web墨卡托投影。Web墨卡托并不适用于3D,因为两种极限不同,同时也是因为NGA不建议使用Web墨卡托。相反,3D Tiles是适应性非常强,可用于所有的三维数据,便于模型数据的组织以及发布。

 

传统的地理特性,比如多边形和折线,可以压缩在一个平面上。但是3D Tiles用于点云,折线,和多边形,并且还包括全部3d模型的网格、材质和节点结构。

 

4. 互动

3D Tiles支持交互旋转和样式的设置,在WebGL中优化后,使得三维瓦片允许个对模型的交互,比如高亮显示鼠标悬停的模型,或者删除一个3D建筑。

 

5. 多样性

对于单个模型的材质修改,比如根据建筑高度、年代,可以运行不用的效果而不需要些代码。风格样式可以动态的改变。

 

6. 使用性强

传统的四叉树分割方式,使用的TMS,比如3D地图,但是在3D和不均匀分布的数据中表现不佳。

 

3D Tiles可以根据3D场景需要使用,包括K-d 树,四叉树、八叉树、网格和其他的数据结构。代替刚性的空间细分,转换工具可以自适应细分数据,比如,基于渲染每个模型和分布式模型的成本,导出一个平衡的数据结构。在引擎的运行是,在Cesium引擎的运行是选择适用的细分技术。

7. 灵活

传统的二维地图瓦片,根据用户拉近相机位置,可见地图瓦片换成新的高分辨的地图。这就是所谓的细化。换一种说法就是在同一个位置上下载一个子集,但是更高分辨率的。我们称之为更换细分,像影像的瓦片,适用于这种解决方案,甚至3D地形。

 

然而,3D数据集的建筑和点云需要更灵活的方案。例如,在视图范围内,需要同时下载多个本质上相同的建筑,增加更新还有一个好处,就是子瓦片的显示被下载下来,而不少替换细化,要求所有的父节点的子节点只需要下载一次。

8. 异构

3D Tiles是异构的,因为不存在放在哪里都可以的3D数据集。成批量的模型(建筑)需要异构不同的表现形式,比如有模型、点云等等。

 

3D Tiles异构特性,允许基于HLOD离散数据的结构,比如,异构3D建筑可能包括广告拍和LOD的标签,一个压缩比例更高的LOD,一个3D模型,和一个3D模型的纹理和更高形级别的LOD

9. 精确的

10. 快速的

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值