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.序列帧的轴心点设置

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

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

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

相关推荐
旖旎夜光21 小时前
Linux(7)(下)
linux·学习
代码游侠21 小时前
学习笔记——HTML网页开发基础
运维·服务器·开发语言·笔记·学习·html
盖世灬英雄z21 小时前
数据结构与算法学习(一)
c++·学习·排序算法
week_泽21 小时前
OCR学习笔记,调用免费百度api
笔记·学习·ocr
叫我莫言鸭1 天前
关于word生成报告的POI学习2循环标题内容
java·学习·word
秦明月131 天前
EPLAN电气设计:图层导入与导出操作指南
数据库·经验分享·学习·学习方法·设计规范
沉默金鱼1 天前
Unity实用技能-GM命令
unity·游戏引擎
小粉粉hhh1 天前
记录前端菜鸟的日常——实现类似学习通的答题界面
学习
chillxiaohan1 天前
unity粗糙、高光、光泽度调节shader记录
unity·游戏引擎
山土成旧客1 天前
【Python学习打卡-Day33】你好,PyTorch!从“自动挡”到“手动挡”的深度学习之旅
python·深度学习·学习