3dTile技术研究-概念详述(5)

上篇:3dTile技术研究-概念详述(4)

1. 空间数据结构(Spatial data structures)

3D Tiles包含Hierarchical Level of Detail (HLOD)的概念是为了优化渲染空间数据。一个tileset由一颗由rootchildren tiles递归构成的树组成,树可以被组织成不同的空间数据结构。

在运行时引擎是通用的,会渲染tileset定义的任何树。可以组合使用任意tile格式和细化方式( refinement),为了更灵活的支持异构的数据集,详细参考Refinement

一个tileset可以使用类似于栅格和矢量切片方案的2D空间切片方案(例如Web地图切片服务(WMTS)或XYZ方案),该二维空间切片方案以几个细节级别(或缩放级别)提供预定义的切片。但是,由于tileset的内容通常是不一致的,或者可能不容易仅在二维上组织,使用其它的空间数据结构可能是更优的。

下面包含的是一个关于3D Tiles如何表现多种空间数据结构的说明。

1.1 四叉树

当一个tile可以被细化分4个一致的children的时候,可以创建一颗四叉树,类似于典型的2D地理空间切片方案。空的child tiles可以被忽略。

经典的四叉树分割。

3D Tiles允许变化的四叉树,比如不规则分割的和紧密包围体(可以和规则的占parent tile空间25%的包围区域对比,显然对于稀疏的数据集来说这规则的是比较浪费的)。

由紧密包围每个child的空间体构成的四叉树。

比如,这是Canary Wharf的root tile和它的children。请注意左下角,这里的包围体没有包含左边的水,因为那里没有建筑物出现。

3D Tiles也允许其它变化的四叉树,比如宽松的四叉树,它的child tiles空间上有覆盖,但是仍然能够保证空间连贯性,也就是parent tile的包围盒完全包含它的所有的children内容。这个方法是很有用的,对于避免切割对象,比如3D 建筑,穿插的tiles。

上文也提过,3D Tiles是格式规范,它很多方面是宽松而灵活的,就像这里的空间树,并没有过多的要求,也没有要求是四叉树、八叉树还是其他什么树,仅仅是保证空间连贯性即可。

不规则的tile空间有覆盖的四叉树。

看下面,左边的是绿色的建筑物,右边的是粉色的建筑物。注意这里的tiles空间上相互覆盖了,这样就避免了2个绿色建筑物和1个粉色建筑物的切割。

1.2 K-d trees

当每个tile有两个被平行于x,y,z轴(或经度、纬度、高度)的切割面分割的children时,可以创建一颗k-d树。由于随着沿树级别的增加,拆分轴通常是循环旋转的,可以使用中位数拆分,表面积启发法或其它方法来选择拆分平面。

一个k-d树示例。注意这里是不规则分割的。

需要注意的是k-d树不像典型的2D地理空间瓦片方案那样是规则分割的,所以对于稀疏的和不规则分布的数据集来说,可以创建一颗更平衡的树。

3D Tiles允许变化的k-d树,比如multi-way k-d trees,在其中的每个叶子是沿着分割轴进行了多路分割。对于每个tile不是有两个children tiles的方案,取而代之的是有n个children tiles的方案。

1.3 八叉树

八叉树通过使用三个正交分割平面将tile分割为八个children来扩展四叉树。像四叉树一样,3D Tiles允许对八叉树进行变化,例如不均匀的分割,紧密的包围体和有重叠的children。


传统八叉树分割。


使用
累加细化(additive refinement)的非均匀八叉树分割的点云。哥伦比亚大学机器人实验室的Peter Allen教授在法国Chappes的圣玛丽教堂的点云。由Alejandro Troccoli和Matei Ciocarlie扫描。

1.4 Grids

3D Tiles允许均匀的,非均匀的,有覆盖的网格以支持任意数量的child tiles。例如,这是一个Cambridge的非均匀,有覆盖的网格的俯视图。

 

1.5 其它

3D Tiles利用了空tiles:那些具有包围体但没有内容的Tile。由于不需要定义tile的content属性,因此可以通过分层剔除使用空的非叶tile来加速非均匀网格。本质上,这会创建一个四叉树或八叉树,而没有层次的详细信息(HLOD)。

2. 总结

采用什么空间结构的树都可以,只要保证空间连贯性即可,这也是3D Tiles数据加载机制所需要的,其它的根据实际情况,加以研究,选取自己适合的空间树结构,甚至是创造性的优化也可以,没准会被收录于3D Tiles规范,就像多路k-d树那样。

 

传送:

3dTile技术研究-开篇

3dTile技术研究-概述

3dTile技术研究-概念详述(1)

3dTile技术研究-概念详述(2)

3dTile技术研究-概念详述(3)

3dTile技术研究-概念详述(4)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值