一、简介
b3dm,即Batch 3d model的缩写,Batch,即批量,指的是多个几何数据,b3dm就是多个数据模型组合在一起存储的一种文件而产生的一种文件格式。
优点
1.多个模型数据可组合到一个缓冲区中,提高渲染性能。
2.单个缓冲数据可以直接复制到GPU内存中,减少复制操作,且可以以最小化绘制调用次数进行结构化
特点
多个模型组合到一个缓冲区时,它仍然支持每个模型的样式变更和对每个模型的操作。比如说可以用不同的颜色来渲染模型,或者通过鼠标单击确定模型是否被选中。
这是如何实现的呢?
在3dtiles中通过扩展额外的顶点属性来实现,几何数据扩展了batchId属性,将每个顶点的batchId存储为整数,具有相同ID的顶点属于同一模型。batchId做为批量表中查找样式信息和元数据的索引。
二、数据组成

一个b3dm文件中主要包含以上数据,文件头和正文。
文件头
文件头一般时前28个字节,包含了该瓦片的一些基本信息数据,内容如下
| 属性 | 字段 | 字节数 | 含义 |
|---|---|---|---|
| magic | char[4] | 4 | 瓦片类型,通常为“b3dm” |
| version | uint32 | 4 | 瓦片版本号,通常 |

文章详细介绍了b3dm文件格式,一种用于高效存储多个3D模型的技术,通过批量处理优化渲染性能,利用扩展顶点属性和特定的文件结构,包括文件头、特征表、批量表和内嵌的GLB数据。
最低0.47元/天 解锁文章
5718

被折叠的 条评论
为什么被折叠?



