【模型渲染】前端如何让glb模型转3dtiles

本文介绍了作者在使用CesiumGS的3DTilesToolsv0.4.1时遇到的问题,包括无法批量处理文件夹、功能局限等,并分享了安装和使用过程中的步骤。作者期待后续版本的优化。
摘要由CSDN通过智能技术生成

发现了一个新插件,3D Tiles Tools,CesiumGS 出品,新鲜热乎(当前写这篇文章的时候,版本是v 0.4.1),所以,有些功能还不够使用。这里是我当前版本发现的问题,例如:不可以从一个文件夹中读取glb,然后转到另一个输出文件夹中

希望之后的版本,可以有更多的优化。

执行步骤:

  1. 拷贝项目(拷贝最新分支的代码,是我所建议的)
 git clone https://github.com/CesiumGS/3d-tiles-tools

因为之前我拷贝了最新稳定版本v 0.4.1的代码,结果跟项目的文档上有所出入(有些功能使用了会报错),是换成了 upgrade-cmpt 这个看提交记录是最新的分支的代码才没有报错

  1. 切换到对应目录下,或者直接通过编辑器打开项目,下载依赖文件
npm install
  1. 下载完成后,它里面会有一些demo以及文件,可以运行一个命令看看有没有报错,这里官方的示例是gzip压缩一个文件夹:

-i 前面的是调用的方法,-i 后面跟的是输入文件或者文件夹,-o 后面跟着的是输出文件或文件夹

 npx ts-node .\src\cli\main.ts gzip -i ./specs/data/TilesetOfTilesets/ -o ./output/TilesetOfTilesets-gzipped/
  1. 如果示例是成功的,那我们就开始转模型格式吧:
    举个例子,我要调用 glbToB3dm 方法转glb文件夹里面的glb,然后输出到output文件夹里,对应的是转换后的b3dm文件。

比较无语的地方就在这里,这个转换方法是一一对应的,就是一个glb转一个b3dm。所以我才吐槽,不能一个文件夹对应一个文件夹。

 npx ts-node .\src\cli\main.ts glbToB3dm -i ./glb/1.glb -o ./output/1.b3dm
  1. 然后转换成对应瓦片了,可是没有tileset.json,所以需要再创建一个json出来:
    调用 createTilesetJson 方法,去扫描刚刚转换出来的 output 文件夹,让其根据里面的 b3dm 生成一个tileset.json
 npx ts-node .\src\cli\main.ts createTilesetJson -i ./output/ -o ./output/tileset.json
  1. 重点来了,如果有多个glb,怎么转成 b3dm?
    答案是:写一个批处理文件出来,把下面的代码复制粘贴到记事本中,保存后更改其后缀名为.bat,双击执行就行了。

代码的内容可以视情况而变,例如文件夹地址名称不对,那就改;例如,可以在循环代码后,再接一个生成tileset.json的命令。等等。

@echo off
for %%f in (./glb/*.glb) do (
    npx ts-node .\src\cli\main.ts glbToB3dm -i "%%f" -o "./output/%%~nf.b3dm"
)
echo All files have been processed.
  1. 快去运行看看转换出来的3dtiles能否渲染吧!
    还有比较多的插件,例如 objTo3d-tiles,运行方法大差不差的,可以多多尝试。
GLB文件是一种包含3D场景和模型的文件格式,而3DTiles是一种用于将大规模3D地理数据切割和组织的文件格式。要将GLB文件换成3DTiles文件,可以遵循以下步骤: 1. 首先,需要使用支持3D地理数据换的软件或工具。一种常用的工具是CesiumJS的3D Tile Converter。 2. 打开3D Tile Converter并加载GLB文件。这可以通过指定文件路径或通过拖放GLB文件到工具界面来完成。 3. 选择换选项。3D Tile Converter提供了多种选项,可以根据需要设置换的细节。例如,可以选择切割粒度、压缩选项、地理参考系统等。 4. 执行换操作。在设置好换选项后,点击换按钮开始将GLB文件换成3DTiles文件。换过程可能需要一些时间,具体取决于GLB文件的大小和换选项。 5. 换完成后,可以选择将生成的3DTiles文件保存到指定的位置。 6. 最后,可以使用支持3DTiles格式的地理信息系统(GIS)软件或平台来加载和显示换后的数据。例如,可以使用CesiumJS、FME、ArcGIS等。 需要注意的是,GLB文件的换过程可能涉及到一些数据的优化和处理,以确保换后的3DTiles文件能够高效地加载和显示。此外,由于GLB文件和3DTiles文件具有不同的数据结构和格式,因此在换过程中可能会有一些不兼容或丢失数据的情况,可能需要进行额外的处理或编辑来达到预期的效果。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值