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

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

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

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

相关推荐
liuyicenysabel7 小时前
多服务上线日记三:
运维·服务器·笔记·学习
YM52e8 小时前
鸿蒙ArkTS实战项目 - 门店陈列巡检台:巡检卡片与多列切换实现
学习·华为·harmonyos
一只小小的芙厨9 小时前
基础数论总结
笔记·学习·算法
hsjiasb10 小时前
FreeRTOS学习(三十七)——常见错误与工程规范
学习·学习笔记·freertos
小席是个热心肠11 小时前
Redis的自我学习
数据库·redis·学习
zyf10441611 小时前
暑期实践日志 Day33:完成全部字幕添加,工作基本收尾
学习·计算机网络·剪辑·暑期实践·课题任务
Chris _data12 小时前
WPF 上位机开发学习笔记 - 第四天
笔记·学习·wpf
HY小宝F12 小时前
树莓派 FFmpeg 实战笔记(二):命令行、源码编译与硬件编码的真相
学习·职场和发展·ffmpeg
2601_9672642813 小时前
Jetpack Compose 实践指南:从入门到进阶
java·学习
江上闲人.13 小时前
Wardogs战犬\战狗Beta测试启动报错UE崩溃卡顿?解决方法来了
游戏·游戏引擎·虚幻·战犬·战狗·wardogs