合并生成模型瓦片
使用说明
该功能支持一次性将数据源中的模型数据(模型数据集或CAD)生成一份S3MB或S3MBLOCK格式文件。在场景中加载此模型瓦片,能够大幅度提升模型浏览性能与显示效果。
功能入口
- 三维数据选项卡->三维瓦片组->生成瓦片下拉菜单->多数据集合并生成瓦片模块->模型按钮
- 工具箱->三维数据->模型处理->合并生成瓦片
操作步骤
- 在工作空间管理器中,打开需要生成模型瓦片的数据源。
- 在“三维数据”选项卡上“三维瓦片”组中,单击“生成瓦片”下拉菜单中的“模型” 按钮,弹出“合并生成模型瓦片”对话框。
- 添加数据集时,单击
按钮,在打开的“选择”界面选择数据集。 - "选择"对话框界面左边区域内选择数据源,界面右边区域显示选中数据源内的所有模型数据集,单击“全选”或多选,确定添加的数据集,单击“确定”执行数据集添加操作,也可新建数据集作为添加数据集。
- 工具栏:
- 全选:将数据列表中的数据集全部选中后可对数据集进行批量操作,如:删除和批量设置瓦片参数。
- 反选:选中数据列表中未被选中的数据集。
- 删除:将数据集从当前数据列表中移除。
- 通过置顶、上移、下移和置底按钮调整数据列表中数据集的顺序。
注意事项:- 批量设置瓦片参数时,在键入具体参数值后,需要单击回车键(Enter)才能生效,否则可能导致批量赋相同参数值不起作用。
- 基础设置
- 瓦片名称:生成瓦片的配置文件名,默认与数据源名一致,可修改。
- 存储路径:模型瓦片存储路径,在该路径下创建了一个以瓦片名称命名的文件夹来存放。
- S3M版本:支持S3M1.0、S3M2.0、S3M3.0、S3M 3.01四种类型。
- S3M 1.0:不支持PBR材质、支持生成以圆球体为基准的瓦片。
- S3M 2.0:支持PBR材质,调整属性文件存储结构(二进制流)、支持生成以圆球体为基准的瓦片。
- S3M 3.0:支持OBB包围盒,支持生成以椭球体为基准的瓦片,支持Meshopt顶点优化方式。
- S3M 3.01:符合CH/T 9040-2023标准的规定,支持OBB包围盒,支持生成以椭球体为基准面的瓦片,支持Meshopt顶点优化方式。
- 纹理压缩格式:对于不同用途的瓦片数据,应用程序将采用不同的纹理压缩方式,以减少纹理图像所使用的显存数量。目前支持以下四种纹理压缩格式:
- WebP:大幅减少数据总量,PC与移动端都支持的纹理压缩格式。
- DXT(PC设备):减少显存占用,提升渲染性能,但是数据总量会增加。
- CRN_DXT5(PC设备):减少显存占用,减少数据总量,但是需要较长的处理时间。
- KTX2.0:减少显存占用,减少数据总量,但是需要处理时间比标准CRN长,PC与移动端都支持的纹理压缩格式。
- 顶点优化方式:当S3M版本为S3M 1.0、S3M 2.0时,顶点优化方式仅支持不压缩。当S3M版本为S3M 3.0、S3M 3.01时,顶点优化方式仅支持不压缩、Meshopt方式。
- Meshopt压缩会使数据总量缩小,利于前端渲染,对BIM数据的压缩比例更大。但该方法为有损压缩,对条带状的单个对象建议切分后使用。
- 属性存储类型:用于设置数据属性的存储格式,支持如下类型:
- S3MD:以JSON格式存储,能够快速提取单个对象的所有属性信息。
- ATTRIBUTE:以二进制流的方式存储,更适合属性信息多的数据使用,可快速提取多个对象的指定字段的属性信息。
- DB:以DB大文件方式存储,仅S3M版本为S3M 3.01时可用。支持Web端大数据量S3M瓦片对象属性的快速查询,以及利用属性字段快速制作专题图。
- 线程数:设置用于批量生成模型瓦片的线程,默认为4。当线程数设置过大时,可能会导致瓦片生成失败,建议适当减小参数值。
- 文件类型:支持S3MB和S3MBLOCK两种类型。
- S3MB:一种开放式可扩展的空间三维模型数据格式的压缩数据格式,适用于空间三维模型数据的传输、交换与共享。
- S3MBLOCK:模型生成三维瓦片时,将纹理与骨架分离,多用于精细模型,能有效解决瓦片文件过大的问题,提升加载效率。S3M 1.0不支持设置S3MBLOCK格式。文件类型为S3MBLOCK时,材质类型不支持选择PBR材质。
- 密码:仅当文件类型选择S3MBLOCK时,该参数可用,用于对结果瓦片数据进行加密。设置密码的三维瓦片数据在打开时需要输入密码。
- 坐标转换:通过坐标转换将数据从源坐标系准确映射到目标坐标系。若不勾选,结果数据将保持源坐标系,不进行坐标转换。
- 转换方法:设置数据投影转换的方法,包括Geocentric Translation(3-para)等。
- 投影转换参数:设置数据投影转换的参数,包括转换参数、比例差、旋转角度、偏移量、旋转原点坐标等参数。
- 目标坐标系:通过重新设定坐标系、复制坐标系(指定数据源或指定数据集)、导入坐标系文件(*.shp、*.prj、*.mif、*.tab、*.tif、*.img、*.sit、*.xml)操作设置瓦片数据的目标坐标系。设置好目标投影之后,“目标坐标系”处会显示目标投影的详细信息。
注意事项:- 若源数据为平面无投影坐标系,则结果坐标系仅支持设置为平面无投影坐标系。
- 若源数据为地理坐标系或投影坐标系,目标投影不支持设置为平面无投影坐标系。
- 瓦片设置
- 瓦片边长:显示和设置瓦片边长的大小,单位为米。瓦片边长大小不同则对应的比例尺不同。当数据密集且几何、纹理都简单时,瓦片边长可以设置较大值,如1000。当数据稀疏且几何或纹理较复杂时瓦片边长可以设置较小值,如200。
- 过滤阈值:过滤掉粗糙层较小的子对象,从而提升大场景数据的性能。 例如,过滤阈值设为2,则在最粗糙层过滤掉最长边小于2米的子对象,次粗糙层过滤掉小于1米的子对象,以此类推。最精细层子对象不过滤。
- 金字塔剖分类型:设置瓦片创建树型金字塔的剖分类型,包括四叉树、八叉树和KD树。四叉树适合城市级别的建筑剖分;八叉树适合单独一栋高楼做剖分,主要应用于BIM数据;选择KD树后支持数据自适应剖分。
- 瓦片高度:当金字塔剖分类型为八叉树时,此参数可用。瓦片高度是以固定的高度指沿Z轴切分模型。此参数多用于模型建筑较高的数据。
- LOD层级设置:设置三维瓦片显示的细节层次。通过多细节层次可在数据渲染时合理地分配渲染资源,实现高效率的场景显示。
- LOD级数:设置瓦片的LOD层级数,在数值框中直接设置即可。
- 层级:显示数据的细节层次,每一层级的数据具有不同的简化率。
- 简化至:根据设定百分比简化模型每一层级的数据,单位为百分比%。设定值为100时,表示数据细节全部保留,不进行简化。随着数值变小,简化程度变高,保留的数据细节变少。如果数据集本身带有LOD,该参数无效。
- 纹理及属性高级设置
- 纹理设置:目前支持两种纹理设置:多重纹理和单重纹理。多重纹理支持生成叠加纹理,单重纹理仅支持生成第一重纹理
- 第二重纹理类型:支持不处理、光照阴影纹理。当模型数据是夜景数据时,建议选择不处理。
- 纹理大小限制:用于设置纹理大小,可选不限制、1024像素*1024像素、2048像素*2048像素以及4096像素*4096像素等选项,默认为不限制。
- 对象ID字段:用于发布服务后,在前端查询属性信息时,关联查询对象属性信息的唯一标识字段。可修改,字段类型为32位整型。
- 顶点权重模式:提供无、数据集字段、高度和原始特征值四种方式。其中,数据集字段是指以指定字段作为权重,高度是指以高度作为权重,原始特征值是指以模型数据本身的特征值作为权重。
- 特征值字段:仅当顶点权重模式选择数据集字段时,该参数可用,用于选择数据集中的属性字段作为对象的特征值字段。
- 字段设置:仅当顶点权重模式选择数据集字段时,该参数可用,用于批量选择模型数据集的属性字段作为对象的特征值字段,默认选择全部属性字段。
- 重复贴图打组,纹理共用,带法线、实例化、带边框:根据需求可自行勾选,纹理共用只支持纹理压缩格式为“DXT(PC设备)”。
- 重复贴图打组:在建模的过程中,常常会在一栋建筑上面用到大量重复的纹理贴图。比如,不同楼层上的栏杆,护栏等,往往具有相同的外观,通过共用一个贴图可以大大降低性能与资源的消耗。
- 纹理共用:纹理共用的作用是将精细层模型用到的纹理全部导出到一个文件夹中,如果在不同的模型上用到了同一张纹理,只导出一张纹理。如果数据中,存在大量的建筑使用同一张纹理的情况,可以使用此功能。
- 带法线:表面法线是几何体表面的重要属性,主要用于渲染时产生符合视觉习惯的光照效果。在瓦片渲染时可以根据模型自身的 法线进行渲染。
- 实例化:内存中只需要存储一个对象,与之复用的就只需要更改位置和旋转缩放等状态即可。
- 带边框:用于生成三维瓦片的轮廓。加载到场景中了以后,带线框的数据,可以在场景里面选择风格设置>填充模式为填 充于轮廓即可查看。
- 数据美化设置
- 材质类型:用于设置结果瓦片数据的材质类型,包括:普通材质、PBR材质、UE材质、Unity材质。若模型数据中存在PBR材质,无论选择普通材质还是PBR材质,结果瓦片数据都是以PBR材质格式生成。若结果数据要在游戏引擎(UE或Unity)中制作特效,可勾选UE材质或Unity材质。
- 材质关联文件:当材质类型为UE材质或Unity材质时,支持导入*.json格式的材质关联文件。材质关联文件记录了UE或Unity与模型数据集之间的材质映射关系。当瓦片数据在UE或Unity中使用时,可直接映射对应材质,提升数据可视化效果。
- 生成第二重纹理坐标:设置是否生成第二重纹理(自发光纹理)的纹理坐标。第二重纹理常用于在UE中实现自发光效果,从而美化场景。
- 纹理横向尺寸:仅当勾选生成第二重纹理坐标后,该参数可用,用于控制第二重纹理在U方向上的尺寸,单位为米 。
- 纹理纵向尺寸:仅当勾选生成第二重纹理坐标后,该参数可用,用于控制第二重纹理在V方向上的尺寸,单位为米。
- 设置完成后,单击“生成”按钮,执行模型瓦片批量生成操作。
注意事项:- 当待生成瓦片列表中模型数据集的坐标系不一致时,会导致生成失败。
- 瓦片边长决定了瓦片根节点数量:边长越大,根节点越少;相反,边长越小,根节点越多,生成瓦片时间更长。根节点数量过多时,加载模型将在一定程度上变慢。
- LOD层级数对模型显示时的切换平滑效果有影响:LOD层级数越大,模型显示时切换的效果越平滑;另一方面,LOD层级数设置过大,将导致生成冗余层级的模型,生成瓦片耗费时间较长。请根据显示需求设置合理数值。
- 圆球数据支持在椭球场景上加载;椭球数据也支持在椭球上加载;椭球数据不支持在圆球上加载。