Unity学习--2D动画--[序列帧动画]2D序列帧动画

·来源于唐老狮的视频教学,仅作记录和感悟记录,方便日后复习或者查找


一、什么是序列帧动画


二、代码制作序列帧动画

思路:只要我们动态地改变Sprite Render中Spirte这个参数即可

那我们就需要先需要在动画中出现的图片

设置好参数与图片切换的逻辑

之后回到场景中运行,就可以看到图片动态切换了起来

但是这样显然还是太麻烦了,不过好在Unity可以让我们更方便地在Animation中制作这样的序列帧动画


三、Animation窗口制作序列帧动画

方法一

1.创建一个空物体

2.创建一个动画

3.直接把动画需要的序列帧拖入窗口中

然后可以直接在这里改变帧率来控制每个序列帧之间的间隔

不过一般来说建议先改变帧率,然后再把序列帧拖进去

方法二

直接把图片拖入Hierarchy层级窗口中

一般是第一次创建这个动画的时候才会用这种方法

直接选中一组序列帧,然后拖入层级窗口中,它就会认为你是要创建序列帧动画了

注意:控制动画帧率,来控制动画的播放速度


四、利用Animator进行动画控制

和之前的3D的动画一样的

比如控制一个有移动,跳跃,待机三个状态的状态机

给它设置相应的条件参数,并加入到连接切换里。

当然还可以这样子,因为我们移动的时候获取输入本来就是一个数值,直接给到这里来判断也是OK的

最后采用的是布尔类型的isOnGround 和 整型的xSpeed去判断

idle和run的切换取决于xSpeed是否等于0

idle和jump的切换取决于isOnGround是否为假,以及xSpeed是否为0

run和jump的切换取决于isOnGround是否为假,以及xSpeed是否为0

所以,通过简单直观的条件判断,我们状态之间的切换大多还是符合正常人类思考的逻辑的


五、其他

1.无法生成精灵

如果你发现你的序列帧图片使用的时候报了这个警告⚠,而且没办法显示出来

而且没有这种正常的精灵图片显示

那你就先切回Default状态,然后把它Non-Power of 2这个枚举设置为None并应用

之后再切回精灵模式,并应用

它的精灵图片就正常出现,而且也可以在序列帧动画中正常显示啦

2.序列帧的轴心点设置

一般来说把轴心点设置在正下方比较合理。

可以在这里直接重新切片来集体重设轴心点位置

注意:最好先设置好轴心点之后,再来制作动画,不然先做完了,再调整轴心点,可能播放的时候会发现图片不见了,那就又要重新把序列帧拖进去,麻烦的

相关推荐
凸头1 小时前
Nginx配置学习
运维·学习·nginx
木风小助理1 小时前
未来JS架构:Realm隔离——从全局共享到独立环境的必然
学习
非凡ghost1 小时前
批量校正图像方向(校正PDF页面方向)
windows·学习·pdf·软件需求
科技林总1 小时前
【系统分析师】5.1 数据库管理系统
学习
o(╥﹏╥)1 小时前
Learn how Gen AI 学习笔记
人工智能·笔记·学习
进阶小白猿2 小时前
Java技术八股学习Day23
java·网络·学习
臭东西的学习笔记2 小时前
论文学习——酶动力学参数预测的机器学习模型研究进展
人工智能·学习·机器学习
落雨盛夏2 小时前
深度学习|李哥考研——(无)监督学习相关分类
深度学习·学习·分类
jrlong2 小时前
DataWhale大模型基础与量化微调task4学习笔记(第 1章:参数高效微调_PEFT技术综述)
笔记·学习
leiming62 小时前
linux 进程学习之信号
linux·运维·学习