3D Tiles Next CesiumJS 路线图

3D Tiles Next CesiumJS 路线图

3D Tiles Next为 3D Tiles 添加了几个新的实验性功能。目前,它们采用 3D Tiles 1.0 和 glTF 2.0 扩展的形式。这些规范的概述可以在3d-tiles存储库中找到。另请参阅资源列表

这个问题跟踪 CesiumJS 的变化和每个的实现状态。

3D Tiles Next Extensions - 初始实现
这些功能现在从 CesiumJS 1.87.1 开始可用

3DTILES_implicit_tiling- Experimental 3D Tiles Next Extensions #9517中的实验性实现
实现一个,它在内容加载时将Implicit3DTileContent隐式图块转码为对象。Cesium3DTile这个朴素的转码器在功能上是相似的Tileset3DTileContent(外部瓦片集)。
3DTILES_multiple_contents- Experimental 3D Tiles Next Extensions #9517中的实验性实现- 但是,我们发现规范中有一些警告,特别是无法使用需要混合改进的内容。本规范未来可能会修订 ADD/REPLACE
实施Multiple3DTileContent
在隐式平铺中添加对多个内容的支持。
3DTILES_metadata- Experimental 3D Tiles Next Extensions #9517中的实验性实现
创建用于表示元数据概念的类
将瓦片集、瓦片和组元数据添加到 3D Tiles 1.0 类
将切片和组元数据支持添加到隐式切片
向多个内容添加组元数据支持
添加Cesium3DTileFeature.getPropertyInherited()用于 CPU 样式。现在样式语言将使用 tileset、tile 和 group 元数据
3DTILES_content_gltf- Experimental 3D Tiles Next Extensions #9517中的实验性实现
(glTF) EXT_feature_metadata- 正在进行中。这涉及重大重构Model.js(请参阅下面的其他改进部分中的更多内容)
创建用于表示要素元数据概念的类
创建parseFeatureMetadata()用于解析EXT_feature_metadata扩展的函数
创建一个parseBatchTable()函数将旧的批处理表转码为新的特征元数据格式。EXT_batch_table_hierarchy这包括一些与 JSON 属性和扩展兼容的类。
通过从 glTF 加载特征元数据GltfFeatureMetadataLoader
重新设计Cesium3DTileBatchTable以使用功能元数据。这将允许使用特征元数据进行样式设置。
更新Gltf3DTileContent以支持功能元数据
3DTILES_bounding_volume_S2- 正在进行中,请参阅 PR添加对 3DTILES_bounding_volume_S2 的支持 #9506
自定义着色器请参阅路线图问题基本实现。
其他支持扩展
(glTF) EXT_mesh_gpu_instancing- 正在进行中,需要Model.js重构
(glTF) KHR_mesh_quantization- 进行中
(glTF) EXT_meshopt_compression- 未来
(glTF) 地理定位扩展 - 未来
在这里插入图片描述

ModelExperimental实施改进
一般改进
支持noData和required来自EXT_mesh_features- - 支持和来自 #9887ModelExperimentalnoDatarequiredEXT_mesh_features
为性能添加渲染统计信息:向 ModelExperimental、ModelExperimental3DTileContent 添加统计信息 #9886
插入每个顶点元数据(参见ModelExperimental:插入每个顶点特征 ID #9935)
缓存着色器和/或管道结果
检测量化顶点颜色:未正确检测量化顶点颜色 #9814GltfLoader
重构单元测试,请参阅改进 ModelExperimental 的测试 #9813
特征纹理拾取支持从属性纹理中拾取属性 #9852
合并和之间的命名约定getPropertyIds()-getPropertyNames()解决getPropertyIds 和 getPropertyNames 之间的不一致问题 #9914
支持没有属性表的特征 ID EXT_mesh_features:处理没有属性表的特征 ID #9884ModelExperimental
与 3D Tiles Inspector 集成
用于个别型号的 Eye Dome Lighting用于 #10005的 Eye Dome LightingModelExperimental.fromGltf()
自定义着色器改进
允许gl_PointSize在自定义着色器中设置:自定义着色器:让着色器控制 #9851gl_PointSize
将制图坐标添加到自定义着色器自定义着色器:为片段着色器提供全局坐标 #9735
隐式平铺坐标自定义着色器:隐式平铺坐标作为内置制服? #9736
自定义着色器中的功能 ID 将功​​能 ID 添加到自定义着色器 #9894
自定义着色器中的属性纹理
自定义着色器中的属性表
与旧的配对Model.js
的意图ModelExperimental是有朝一日取代现有的Model.js. 以下是实现它的关键步骤:

支持 3D Tiles 1.0 格式 将 3D Tiles 1.0 格式转码为 #9836ModelExperimental
b3dmModelExperimental3DTileContent-使用功能元数据和实例化转码
i3dm
ModelExperimental3DTileContent 使用功能元数据和实例化转码
确保ModelInstanceCollection不再需要
pnts
添加对点云衰减的支持
添加对眼罩照明的支持
ModelExperimental3DTileContent使用POINTS原语和元数据转码
cmpt- 确保ModelExperimental根据需要连接以使用。
vctr- 转码为ModelExperimental3DTileContent
支持分类模型,所以我们可以替换ClassificationModel.
随时间变化的模型:
glTF蒙皮
glTF 变形目标
glTF 动画
Cesium OSM 构建支持
支持 CESIUM_primitive_outlineglTF扩展
支持旧的批处理表层次结构
PBR照明
基本 PBR 照明
基于图像的照明
其他现有功能

  • 自定义灯光颜色添加 lightColor 到 #10058ModelExperimental
    阴影
    2D/Columbus View support - 支持在 2D 和 Columbus View 模式下渲染 #9934ModelExperimental
    从构造函数中剔除背面
    剪裁平面
    钳对地
    造型
    GPU 样式模型实验:GPU 样式 #9944另请参阅GPU 元数据特征表打包 3D Tiles Next #9572
    在样式语言中使用统计信息
    ModelExperimental 中的样式点大小Cesium3DTileStyle.pointSize #10046
    使用元数据属性的最小/最大值以获得更好的色带
    考虑弃用
    glTF 1.0 支持(因为它增加了相当大的复杂性)
    KHR_techniques_webgl支持(与 glTF 1.0 相关)
    KHR_materials_common支持
    轮廓作为派生命令
制作 Cesium 3D Tiles 地形需要准备高程数据和纹理数据,并使用 Cesium 提供的工具进行处理和转换。下面是一个基本的制作流程: 1. 准备高程数据:获取高程数据,可以是 DEM(数字高程模型)文件、LIDAR 数据等。确保数据的分辨率和覆盖范围适合您的需求。 2. 准备纹理数据:获取地表纹理图像,可以是卫星图像、航拍图像等。确保纹理图像和高程数据的对应关系正确。 3. 使用 Cesium 3D Tiles 高程工具:Cesium 提供了 `CesiumTerrainBuilder` 工具,用于将高程数据转换为 3D Tiles 格式。您可以按照 Cesium 官方文档中的说明进行安装和使用。 4. 使用 Cesium 3D Tiles 纹理工具:Cesium 还提供了 `Cesium3DTilesServer` 工具,用于将纹理数据转换为 3D Tiles 格式。同样,您可以按照官方文档中的说明进行安装和使用。 5. 合并高程和纹理数据:将生成的高程 3D Tiles 和纹理 3D Tiles 进行合并,以创建完整的地形数据集。您可以使用 `tileset.json` 配置文件来描述数据集的元数据和属性。 6. 加载和显示地形:使用前面提到的方法,将地形数据集加载到 Cesium Viewer 中,并设置合适的相机视角和其他显示参数。 请注意,制作 Cesium 3D Tiles 地形需要一定的数据处理和计算资源。具体的细节和工具使用方法,请参考 Cesium 官方文档和示例代码。 希望这些信息对您有所帮助!如果您还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值