简介
本文主要记载自己学习unity的过程,边看视频边写笔记,原视频为麦可老师(M_Studio)在B站发的Unity教程 Your First Game,笔记内容没那么详细,仅供复习使用,学习请前往观看麦可老师的视频
麦可老师在这节课主要讲了添加跳跃动画
一、创建跳跃动画效果
打开animation窗口,点击右边的小三角号,选择create new clip,将其命名为Jump.anim,放到Assets\Animation\player目录下,然后将跳跃的图片素材拖拽进去,素材位置是Assets/Sunnyland/artwork/Sprites/player/jump/player-jump-1.png,别忘了把大小改为16,这时候点击播放就有了跳起的效果。
二、创建下落动画
同样的方式创建一个新的clip,命名为Fall.anim,将下落的图片素材拖拽进去,素材的位置是Assets/Sunnyland/artwork/Sprites/player/jump/player-jump-2.png
三、关联跳跃与下落的动画效果
打开animator窗口,分析各个动画的关系,右键动画,选择make transition,会出现一个箭头,将箭头连接到需要过渡的动画上,实现动画与动画的过渡
跑动可以跳跃 所以需要run->jump
站立可以跳跃 所以需要idle->jump
跳跃之后落下 所以需要jump->fall
落下之后站立 所以需要fall->idle
添加完应该是这样的
做好了动画的过渡,接下来需要添加过渡条件
将左侧面板切换到parameter,点击加号,添加三个bool类型的参数,一个命名为jumping,一个命名为falling,一个命名为idle
然后为各个动画之间的过渡设置条件 将等待当前动画播放完才可以切换下个动画属性has exit time取消 过渡时间transition duration设置为0
- 从跑动run过渡到跳跃jump jumping->true
- 从站立idle过渡到跳跃jump jumping->true
- 从跳跃jump过渡到下落fall jumping->false,falling->true
- 从下落fall过渡到站立idle falling->false,idle->true
四、给地面添加layer图层
要实现角色从下落到站立的效果,我们需要知道角色落到了地面上,那么如何去判断角色落在了地面,每一个tilemap都是一个碰撞体,所以需要为地面添加一个图层效果
打开属性面板,点击layer右侧下拉的三角符号,add layer,命名为Ground
然后修改代码,声明一个类型为LayerMask的变量命名为ground
1 | /// <summary> |
然后将ground属性设置为刚才添加的layer
最后再将tilemap的图层设置为ground
运行游戏,按方向键,我们的角色就有了跑步的动画了
完整代码如下
1 | using UnityEngine; |
第七节课到这里 原视频地址