在开源代码里无法找到fbx转3dtiles的源码,我的做法是通过两个开源代码结合的方式实现;
具体思路如下:
首先通过assimp读取fbx文件,读取之后可获取animation、material、Mesh、Node、Image等数据源,assimp源码见github:https://github.com/fanvanzh/3dtiles 注意assimp可以直接将fbx转换为gltf文件格式,
然后使用另一套开源代码:https://github.com/nxddsnc/gltf-to-3dtiles
将gltf转换为3dtiles;
但是在我转换的过程中发现,部分fbx在转换为gltf之后,无法使用第二个开源库进行转换,后来发现是因为两个转换数据结构的存储,存在差异,导致gltf转换3dtiles失败
所以将两个程序进行融合;
首先将assimp提取的过程提取出来,此开源代码提取了animation、material、Mesh、Node、Image等数据,然后扣取第二份源码gltf解析后的输出,可以发现都存在animation、material、Mesh、Node、Image等数据,将这些数据直接进行赋值并转换,两个工程融合之后就得到fbx转3dtiles的直接源码