Unity 2D Animation——3.待机动画录制

Unity 2D Animation——3.待机动画录制,第1张

上一回我们介绍了 Unity中的2D IK系统 ,这一回我们讲讲如何录制第一个动画——待机动画。

首先打开Unity动画窗口,点击Window——》Animation——》Animation。可以看到下方的时间轴,跟大部分动画制作软件一样,Unity也有一条时间轴。注意这里的Animation窗口和Animator窗口,不要混淆。Animation是制作动画剪辑用的,而Animator是设置动画状态机用的。

创建动画剪辑的时候一定要清楚目前选中的节点,本例中选择的是Player节点,最外层节点。在这个节点上创建Animation,用于控制全身的动作。同时要确保下子节点中没有创建Animation组件。

在d出的对话框中给新创建的动画剪辑命名,待机动画命名为idle_animation。创建Animations目录,保存于Animations目录中,养成分目录的好习惯,便于资产的管理。

录制动画之前,需要将角色中需要录制动画的所有节点的position,rotation全部设置添加到关键帧中。在Hierarchy层级窗口中,我们选择如下图所示的节点,注意选择之前可以按住alt键并点击MBoy左侧的小三角,就可以打开MBoy下所有的子节点。选中第一个节点后按住shift键,再选中最后一个节点就可以全部选中,再按住ctrl键来剔除不需要的节点。其中骨骼端点的空节点都是不需要的,不需要通过这几个点来控制IK点的运动。但是最下方的几个Target必须得加入进去,这几个点是控制IK运动的目标点。

选中节点之后,在Animation窗口中点击录制关键帧按钮,进入录制关键帧模式。

在Inspector检视窗口中找到Position属性,在上面右键单击,d出菜单中选择添加关键帧Add Key,将上一步中选中的所有节点的Position属性全部添加到关键帧中。重复上述步骤将Rotation属性也添加关键帧Add Key。

添加完关键帧后,Potision和Rotation属性分别如图所示。

复制第0帧的所有关键帧,粘贴到第60帧上。点击最上面的菱形即可选中下面所有的关键帧。按ctrl+c进行复制,在第60帧上按ctrl+v进行粘贴。保证第0帧的关键帧与第60帧的关键帧一致,完成了一个60帧的循环。

在第30帧处,选中根骨骼进行向下移动,可以看到时间轴上已经记录了当前的动作,加入了新的关键帧。左右拖动时间轴可以看到动画效果。(unity2019和2021点击动画播放按钮可以正常看到动画,2020点击动画播放按钮看不到动画效果,不知道是不是unity的bug,直接运行项目倒是正常的。)

播放动画查看动画效果,可以反复优化动作。

如果我没理解题意的话,应该是Thread.Sleep(10000)的使用。

这个其实正常用就行:

using System

using System.Threading

void sleepDemo()

{

Thread.Sleep(10000)

print ("check")

}

但是这种做法会让整个程序卡住一段时间,不知道是不是你需要的延迟的功能,也可以考虑用协程或者延时方法来做。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11787823.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存