Godot学习-创建简单动画

文章目录


1、准备工作

这里主要使用一张Godot图片,作为动画资源。这里我直接上传:

2、创建项目

3、创建结点

  1. 创建一个Sprite2D节点
  2. 为Sprite2D创建一个子节点AnimationPlayer
  3. 保存场景为main.tscn

此时,选择Sprite2D节点,然后我们把资源文件:res://godot.png拖动到Texture纹理属性设置中。

4、创建动画

1、创建动画

如上图所示:我们在动画面板,点击动画,然后新建,我们命名为Test。

当我们创建好动画之后,就会注册在动画库资源的列表中。点击下拉,就有所有的动画资源列表。

当然也可以点击动画,然后管理动画:

2、添加轨道

这里的轨道我认为翻译的不好,应该是踪迹才对。指的就是动画运动的踪迹。我们为Sprite2D添加轨道:

如下图所示:添加轨道->属性轨道

此时会弹框,我们选择精灵节点:Sprite2D

我们主要是让精灵图移动变换,所以属性我们选择Node2D中的position属性。因为Sprite2D继承Node2D,所以选择父类的属性即可。因为它自身没有这个属性。

操作完上述步骤之后,如下图所示:

3、创建关键帧

3.1 第一个关键帧

所谓关键帧就是控制动画的起始或者结束的状态。

我们创建第一个关键帧,在起始的位置:

我们选择position这个属性,然后在0.0起始位置,鼠标右键,就会弹出 插入关键帧,我们插入即可。

插入之后,起始位置多了个菱形块。当然也可以在检查器面板找到position属性,右侧有个小钥匙,点击小钥匙也会插入关键帧。

此时我们的第一个关键帧创建好了,但是要让角色动起来,我们还需要创建第二个关键帧,因为此时角色还是在原地:

3.2 第二个关键帧

假设我们希望在点之间移动需要两秒钟。默认情况下,动画设置为仅持续一秒,因此请在动画面板时间轴标题右侧的控件中将动画长度更改为 2。

我们使用移动工具将我们的精灵移动到右下角,如下图所示:

此时我们再插入一个关键帧:

点击播放按钮,如下:

其实到这里最基本的动画制作是完成了,但是还有一些其他的概念和操作需要介绍。

5、加载后自动播放

为实现动画自动播放,点击动画编辑器中"编辑"按钮左边的"加载后自动播放"按钮即可。可在AnimationPlayer结点所在场景运行时或动画加入了另一个场景中时使用。

起始现在我们就可以运行该项目,选择当前场景,运行之后如下图:

动画呆在原地,此时我们点击加载后自动播放,然后保存。

然后再次运行项目,发现动画自动播放了。

6、动画循环

点击右侧的循环按钮,点击播放,动画就会一直循环播放。

7、轨道设置

下面的属性可以点击测试具体含义:

1、轨道更新模式

轨道更新模式 含义
连续 每帧连续更新,适用于平滑移动、旋转、缩放。例如:物体匀速移动到目标位置
离散 仅在关键帧位置更新 ,适用于帧动画、状态切换 。例如精灵逐帧切换(如角色攻击动作)
捕获 记录初始值后与第一个关键帧混合,适用于从当前位置/状态开始动画。例如角色无论在什么位置都能平滑移动到目标

2、轨迹插值

  1. 临近:设置为最接近的关键帧的值
  2. 线性:使用线性函数计算两个关键帧之间的值
  3. 三次方:使用三次函数计算两个关键帧之间的值

3、其他属性的关键帧

Godot的动画系统不仅限于位置、旋转和缩放。你可以对任何属性进行动画化。

如果你在动画面板可见时选择你的精灵,Godot 会在检查器中为精灵的每个属性显示一个小的关键帧按钮,点击这个按钮,Godot就会自动为当前动画添加一个轨道和关键帧。也就是有小钥匙的属性都可以作为关键帧

4、编辑关键帧

你可以在动画时间轴上点击关键帧,以在属性面板 中显示和编辑其值。

点击关键帧,右侧属性面板就有属性编辑。在这里编辑关键帧的缓和值。这将告诉 Godot 在动画属性到达该关键帧时如何进行插值。

5、使用 RESET 轨道

下面点击编辑,就会显示应用重置:这样就可以保证在保存场景并重新在编辑器中打开时,会恢复默认姿势。

6、洋葱皮

Godot 的动画编辑器允许你在创建动画时使用洋葱蒙皮。要启用此功能,请单击动画编辑器右上角的洋葱图标。此时,在动画对象先前位置将有透明红色副本显示出来。

与洋葱皮按钮相邻的三个圆点按钮可以打开一个下拉菜单,你可以用它来调整洋葱皮的工作方式,包括在未来的帧中使用洋葱皮的能力。

相关推荐
qq_59821175721 分钟前
Unity.UGUI DrawCall合批笔记
笔记·unity·游戏引擎
Clockwiseee1 小时前
文件上传总结
运维·服务器·学习·文件上传
苜柠2 小时前
Wpf学习片段
学习
欢乐熊嵌入式编程2 小时前
智能手表固件升级 OTA 策略文档初稿
嵌入式硬件·学习·智能手表
起床学FPGA2 小时前
异步FIFO的学习
学习·fpga开发
依年南台2 小时前
搭建大数据学习的平台
大数据·学习
小虎卫远程打卡app3 小时前
视频编解码学习10之成像技术原理
学习·计算机视觉·视频编解码
X Y O4 小时前
神经网络初步学习——感知机
人工智能·神经网络·学习·感知机
小王努力学编程4 小时前
高并发内存池(三):TLS无锁访问以及Central Cache结构设计
jvm·数据结构·c++·学习
hnlucky4 小时前
通俗易懂版知识点:Keepalived + LVS + Web + NFS 高可用集群到底是干什么的?
linux·前端·学习·github·web·可用性测试·lvs