Unity技能学院——RPG动作类游戏角色普攻的实现

实现角色普攻是每个RPG类型动作游戏都会实现的功能,在游戏过程中,玩家与敌人相互攻击,产生攻击判定、血量减少、攻击效果等等。

这是几乎是我们每一个想上手RPG游戏开发的必修课。

因此本期内容讲各位零基础的学友带来最简单易上手的角色普攻教学。保证你一遍就能跟的下来!

RPG角色普攻实现

图片

首先,将准备好的资源拖到Scene面板中,给角色添加Animator组件:

图片

点击角色—Inspector面板下方的Add Component—输入Animator—点击Animator完成添加

1.准备一个人形模型

平常买的资源或者是可以免费使用的资源中有很多会有人形动画,基本都给设置了。

图片

2.创建一个角色动画控制器并挂载在角色身上

新建一个文件夹放角色动画控制器,在该文件夹中鼠标右键—Creat—Animator Controller。

图片

3.角色动画设置

   完成角色普攻动画Animation

(1)将Idle动画给动画控制器(Animator Controller)添加一个循环的待机动画

点击创建的Animator Controller(动画控制器),打开Animator面板右键Creat State—Emty—点击创建出来的图形化面板,命名Idle(待机)并且给其Motion添加Idle(待机)动画;

图片

(2)将攻击动画给动画控制器(Animator Controller)添加一个不循环的攻击的动画

点击创建的Animator Controller(动画控制器),打开Animator面板右键Creat State—Emty—点击创建出来的图形化面板,命名为Atk(攻击)并且给其Motion添加Atk(攻击)动画;

图片

(3)选择需要的攻击动画,并且将攻击动画的设置攻击动画的Loop Time(循环时间)不勾选,为false(找到你需要的攻击动画点击Edit—Loop Time取消勾选就是False)

图片

图片

图片

(4)接下来,我们需要去控制待机动画与攻击动画之间的切换,所以需要去添加动画变量。

①点击Parameters创建Trigger类型的条件Idle(待机状态)

②点击Parameters创建Trigger类型的条件atk(判断是否要进行攻击)

图片

(5)进行连线,设置动画之间的播放条件

①右键Idle—Make Transition—连Atk。

②给Idle状态切换到Atk状态之间的线添加Atk条件,并且将Has Exit Time取消勾选。

图片

③右键Atk—Make Transition—连Idle。

④给Atk状态切换到Idle状态之间的线添加Idle条件,并且勾选Has Exit Time 。

图片

最后,记得检查角色的动画控制器(Animator Controller)和人形角色动画(humanoid模型)有没有拖拽给角色的Animator组件。

图片

接下来,我们需要用到代码去控制角色普攻。简简单单的几行代码,就可以实现角色普攻,这几行代码的逻辑也非常好懂:声明动画变量,获取动画组件。

写两个方法,一个是执行待机动画的方法,一个是执行攻击动画的方法。

并且在Update中调用两个方法(注意,不要放在Start里面哦。因为在Start调用方法,只能被调用一次,在Update中调用是每帧之前执行一次。)

在待机动画的方法里面激活待机动画触发器,在攻击动画的方法里面写的逻辑是判断是否按下了A,如果按下则激活攻击动画触发器。

图片

END

原价199 限时免费的训练营可以扫码免费领取噢,有需要的可自取!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值