Files
netease-modsdk-wiki/docs/mconline/10-addon教程/第07章:自定义生物/课程03.动画格式.md
2025-03-17 13:24:39 +08:00

82 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
front:
hard: 进阶
time: 15分钟
---
# 动画格式
#### 作者:境界
动画格式是指由基岩版团队为生物实体开发的数据结构是写入JSON文件并以JSON语法呈现的。若开发者是使用Blockbench这样的软件制作的美术资源是可以不用特地了解这些结构的。本章教程更多是为同时兼具美术和开发的个人开发者进行一些知识上的梳理和归纳展示图中可能对一些非关键信息进行了折叠。
#### format_version
format_version是指代定义动画文件的版本号目前只有1.8.0这一格式版本号。
#### Animation.
每个动画资源都必须以animation.为固定前缀。后面的名称可以以生物名称加动画名称的 组合。
#### loop
loop意为动画播放的循环格式。如果只播放一次则loop属性可以不填若循环播放loop值为true。若动画结束后停留在最后一帧值为"hold_on_last_frame"。
#### animation_length
animation_length意为动画时长。
#### bones
bones意为每个骨骼动画信息的集合。在里面保存着所有生物骨骼的位移信息、旋转信息、缩放信息。其中里面的每个属性键都对应着生物几何体的骨骼名称。对应的值内共包含rotation旋转、position位置、scale缩放三种动画形式每个形式内再包含着相应的动画信息。
```
{
"format_version": "1.8.0",
"animations": {
"animation.fallout_cow.dying": {
"animation_length": 0.52,
"bones": {
"body": {
"rotation": {
"0.0": [0, 0, 0],
"0.52": [0, 0, -5]
},
"position": {
"0.0": [0, 0, 0],
"0.52": [-2, -11, 0]
}
}
}
}
}
}
```
如上面代码所示:
"0.0"->“0.52”这个时间段body骨骼绕Z轴旋转-5角度位置以骨骼位置向X轴左边偏移2个单位向Y轴向下偏移11个单位同时最后再放大1.5倍。
当前中国版的动画效果都是线性动画效果,即动画的表现形式为匀速。曲线变化动画效果目前还在实验玩法当中,开发者可以在单人模式上看到效果,但无法将组件用于联机,请等待基岩版团队后续开发计划。