UID82897性别保密经验 EP铁粒 粒回帖0主题精华在线时间 小时注册时间2021-7-23最后登录1970-1-1
| 本帖最后由 Cat_Anchor 于 2023-2-25 07:36 编辑
前言
|
上期,我们学习了附着物。由于上期留下了一些疑问,我打算先解决这些疑问,再继续讲我原本计划的。今天我们来学习动画。
| | 动画结构
|
打开资源包根目录,打开animations文件夹,这里用于存放动画。还要明确的是,动画文件一般也不是手写出来的,而是程序生成的。动画文件的后缀是.json,与其他文件一样。
现在我放一段示例动画,让你们了解动画的结构。
- {
- "format_version": "1.8.0", //代码格式版本。虽然有更新的版本,可是现在主流的还是1.8.0这个版本。
- "animations": {
- "animation.small_plane.fly": { //这里的animation.small_plane.fly就是动画ID。
- "loop": true, //如果是true,那么这个动画就会循环播放
- "animation_length": 0.12, //动画的时长。如果loop是true,那么它决定了一次循环有多长。同时,超出这个长度的动画不会播放。
- "bones": { //决定了哪些立方体组有动画。
- "propeller": { //这个propeller是立方体组的名称。
- "rotation": { //这里定义了propeller这个立方体组有改变旋转角度的动画。
- "0.0": [ //这里的0.0指的是时间,单位是秒。数组里指定了在0.0秒时,立方体的旋转角度。
- 0,
- 0,
- 0
- ],
- "0.1167": [ //这里的0.1167指的是时间,单位是秒。数组里指定了在0.1167秒时,立方体的旋转角度。
- 0,
- 0,
- 360
- ]
- },
- "position": { //这里定义了propeller这个立方体有改变位置的动画。
- "0.0": [ //与上面同理,这里的意思是,在0.0秒时,这个立方体在与原本相对的0,0,0位置。(这里的0,0,0类似于坐标。)
- 0,
- 0,
- 0
- ],
- "0.0523": [ //与上面同理,这里的意思是,在0.0523秒时,这个立方体在与原本相对的0,2,0位置(与原本相比,升高了2个像素)。
- 0,
- 2,
- 0
- ],
- "0.1167": [ //与上面同理,这里的意思是,在0.1167秒时,这个立方体在与原本相对的0,0,0位置。(也就是说立方体又回去了)
- 0,
- 0,
- 0
- ]
- } //这一大堆东西在游戏里的效果大概是:名为propeller的立方体升高了2像素,又降低了2像素。(这个动画其实应该是很快的,一个循环大概只花了0.1秒。)
- }
- }
- },
- "animation.small_plane.land": { //这里是第二个动画,可以把一类动画全放一个文件里。
- "loop": true,
- "bones": {
- "propeller": {
- "rotation": [
- 0,
- 0,
- -45
- ]
- }
- }
- }
- }
- }
复制代码
用这个程序可以生成一个模型文件和动画文件(建议电脑打开,手机也可以),很方便,还可以预览动画的效果。(就是对新手不太友好,可能会不知道怎么添加动画)
| | 总结
|
这一期,我们简单地学完了动画。下一期,我们简单讲讲渲染控制器。
|
|
评分查看全部评分
|