FBX转gltf,Ceisum中加载动画效果

下载工具

   链接:https://pan.baidu.com/s/1NembfsLpk_Deebe3xSkvCQ 
   提取码:3f8b 
使用方法

进入到 \fbx2gltf\bin\Windows_NT目录下

在地址栏输入CMD后回车

在命令窗口输入

                                              FBX2glTF -i 绝对路径 -o 绝对路径.gltf

例如

FBX2glTF -i D:\new\plane.FBX -o D:\gltf\plane.gltf

转换后在cesium中加载

var gltf = Cesium.Model.fromGltf({
      url: 'http://127.0.0.1:8080/gltf/plane.gltf',
      scale: 1.0,
    });

viewer.scene.primitives.add(gltf);

设置动画 坐标 旋转角度

Cesium.when(gltf.readyPromise).then(function () {
   gltf.activeAnimations.addAll({
     reverse: true,
     loop: Cesium.ModelAnimationLoop.REPEAT,
   });
   //设置坐标
   var position = Cesium.Cartesian3.fromDegrees(118, 24, 50);
   var mat = Cesium.Transforms.eastNorthUpToFixedFrame(position);
   //Z轴旋转角度
   var angel =Cesium.Math.toRadians(50)
   var rotationX = Cesium.Matrix4.fromRotationTranslation(Cesium.Matrix3.fromRotationZ(angel));
   Cesium.Matrix4.multiply(mat, rotationX, mat);
   gltf.modelMatrix = mat;
});

后续flyTo

viewer.camera.flyTo({
  destination: Cesium.Cartesian3.fromDegrees(118,24,50),
  orientation: {
      heading: Cesium.Math.toRadians(0.0),
      pitch: Cesium.Math.toRadians(-25.0),
      roll: 0.0,
   },
});

也可通过位置矩阵,获取其世界坐标后,转化为地理坐标,再使用上面方法。适用于点击跳转gltf模型。

本篇原文地址https://blog.csdn.net/weixin_43791670/article/details/117462375

参考https://blog.csdn.net/linziping/article/details/103032477

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值