Cesium任意模型动画-01

环境准备

模型处理

  1. 将模型拖入Babylon的沙盒环境中,如图
  2. 打开vscode将glb模型导出为gltf,如图发现官方模型已经处理好了,如图这是我们的目标模型.
  3. 先把他导入blender在导出gltf这样他就是平时拿到的模型了
  4. 在gltf同级目录下创建同名gmdf文件内容如下,我们可以在articulations里添加需要控制的node
  5. 比如我们想要控制火箭整流罩展开,整流罩抛出会先炸开在下落所以需要添加旋转和位移控制如图
  6. 最后把gmdf注入到gltf就可以了
  7. 做完这些就可以在比如收到某条指令触发什么动画,不同时刻不同模型姿态,后面讲怎么使用

附件

火箭模型 gmdf代码

js 复制代码
{
  "AGI_articulations": {
    "articulations": [
      {
        "name": "fairing1",
        "stages": [
          {
            "name": "Size",
            "type": "uniformScale",
            "minimumValue": 0,
            "maximumValue": 100,
            "initialValue": 1
          },
          {
            "name": "TransX",
            "type": "xTranslate",
            "minimumValue": -2000,
            "maximumValue": 2000,
            "initialValue": 0
          },
          {
            "name": "TransY",
            "type": "yTranslate",
            "minimumValue": -2000,
            "maximumValue": 2000,
            "initialValue": 0
          },
          {
            "name": "TransZ",
            "type": "zTranslate",
            "minimumValue": -2000,
            "maximumValue": 2000,
            "initialValue": 0
          },
          {
            "name": "RotX",
            "type": "xRotate",
            "minimumValue": -360,
            "maximumValue": 360,
            "initialValue": 0
          },
          {
            "name": "RotY",
            "type": "yRotate",
            "minimumValue": -360,
            "maximumValue": 360,
            "initialValue": 0
          },
          {
            "name": "RotZ",
            "type": "zRotate",
            "minimumValue": -360,
            "maximumValue": 360,
            "initialValue": 0
          }
        ],
        "modelNodes": [
          "Fairing1"
        ]
      }
    ]
  }
}
相关推荐
西陵1 分钟前
Nx带来极致的前端开发体验——借助CDD&TDD开发提效
前端·javascript·架构
小磊哥er12 分钟前
【前端工程化】前端工作中的业务规范有哪些
前端
ᥬ 小月亮22 分钟前
webpack基础
前端·webpack
YongGit41 分钟前
探索 AI + MCP 渲染前端 UI
前端·后端·node.js
慧一居士1 小时前
<script setup>中的setup作用以及和不带的区别对比
前端
RainbowSea2 小时前
NVM 切换 Node 版本工具的超详细安装说明
java·前端
读书点滴2 小时前
笨方法学python -练习14
java·前端·python
Mintopia2 小时前
四叉树:二维空间的 “智能分区管理员”
前端·javascript·计算机图形学
Mintopia2 小时前
Three.js 深度冲突:当像素在 Z 轴上玩起 "挤地铁" 游戏
前端·javascript·three.js
Penk是个码农2 小时前
web前端面试-- MVC、MVP、MVVM 架构模式对比
前端·面试·mvc