cesium模型加载-转换为gltf 加载fbx格式模型
整体思路:
fbx格式→dae格式→gltf格式→cesium加载gltf格式模型
具体方法:
1. fbx格式→dae格式
工具:3dsMax,
3dsMax插件:OpenCOLLADA,
下载地址:https://github.com/KhronosGroup/OpenCOLLADA/releases
方法:将下载好的COLLADAMaxNew.dle文件复制粘贴到3dsMax的安装目录的plugins文件夹中;打开3dsMax;选择导出,将fbx模型导出为OpenCOLLADA(*.dae)格式
2. dae格式→gltf格式
工具:ColladaToGltf.exe,
下载地址:https://github.com/KhronosGroup/COLLADA2GLTF/releases
方法:在Windows下进入到命令行模式,并进入到ColladaToGltf.exe文件夹下,输入下面的命令进行转换:collada2gltf.exe -f dae文件的绝对路径 –e
3. cesium加载gltf格式模型
let view = new Cesium.Viewer('cesiumContainer',{ animation:false, timeline:false, //vrButton: true }); let scene = view.scene; //位置 let position = Cesium.Cartesian3.fromDegrees(116.080591,39.919141,10); let hpRoll = new Cesium.HeadingPitchRoll(); let fixedFrameTransforms = Cesium.Transforms.localFrameToFixedFrameGenerator('north','west'); //添加模型 let carPrimitive = scene.primitives.add(Cesium.Model.fromGltf({ url : '../model/demo1.gltf', modelMatrix: Cesium.Transforms.headingPitchRollToFixedFrame(position,hpRoll,Cesium.Ellipsoid.WGS84,fixedFrameTransforms), minimumPixelSize:128, scale : 1.0 })); view.camera.flyTo({ destination : Cesium.Cartesian3.fromDegrees(116.080591,39.919141,10) });
4.具体案例
3dsMax中的FBX格式的模型
加载到cesium中的fbx→gltf格式的模型