温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何进行开源objTo3d-tiles的简单分析

发布时间:2021-12-28 12:02:00 来源:亿速云 阅读:240 作者:柒染 栏目:大数据

如何进行开源objTo3d-tiles的简单分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

objTo3d-tiles工具。  
大概看了一下工具的内容,后边看了一下源代码,根据其中的样例数据,进行了测试,并将数据加载到cesium中进行了观看。
简单的对其中代码和功能进行一些分析。
3dtiles中的模型格式是b3dm/i3dm等,代码中是需要先把obj格式的模型转换成以上格式,gltf又是  b3dm  /  i3dm的重要组成部分,所以,工具是先将obj转换成gltf/glb,根据  Batched3DModel的说明,将gltf/glb上添加相应的BatchTable和FeatureTable信息,组合成b3dm/i3dm文件。
有了b3dm/i3dm的文件,还需要在tileset.json中添加模型的文件坐标信息和转换信息,其中,模型的boundingVolume分成三种形式:region、box和sphere,这个需要根据模型的实际尺寸,在Cesium中进行计算。
关键的实现代码:
createGltf.js、createB3dm.js、createSingleTileset.js、getBufferPadded8Byte.js、getJsonBufferPadded8Byte.js
tileset.json中设置了transform的转换信息,因为模型的自身坐标系一般是YUP,所以,到三维场景中,需要一个坐标的转换,在有些3dtiles生成的工具,通常把这个转换集成到b3dm/i3dm文件中。
多个模型文件需要把tileset.json进行合并,combineTileset.js中实现了此功能。
obj转换成gltf/glb,有时会存在转换问题,可以使用其他工具,提前转换成gltf/glb,再修改代码,进行集成生成。
这样制作的3dtiles合并了多个三维模型,数量多了,在性能上还是会存在一些问题,优化性能还需要从模型的lod和数据索引方面进行修整。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI