UnityRPG第三人称控制器

## 引言:

* 之前一直都很苦恼角色控制器和相机的跟随编写,最新版本中unity官方更新了InputActionAssety和StarterAssets,下面对其进行简单的介绍

### 下载示例:

unity资源商店:Starter Assets - Third Person Character Controllericon-default.png?t=M85Bhttps://assetstore.unity.com/packages/essentials/starter-assets-third-person-character-controller-196526* 添加到unity项目中就可以使用,个人认为蛮方便的

* 下载后打开starterassets中的PlayGround

 * 打开后会有一个这样的场景:(我把模型替换成雷电将军了)

 * 玩家角色物体是PlayerAmature,其中包含着网格和骨骼两个部分

 * PlayerMature默认挂载的脚本有:

       

 ### Player Input:

* 决定了玩家的输入操作,比如移动,跳跃冲刺灯等操作的按键和操作方式(虚拟摇杆或者键盘)

* 在assets中右键,找到Input Action选项创建一个新的Input Action Asset,双击打开会出现下面的界面

 * 点击ActionMap的加号创建新的行为映射,命名为Player,一个行为映射下会有多个行为,这里创建wasd移动为例子

* 点击Actions中的加号创建新的Action,并在右侧ActionProperties进行如下设置:

* 在行为旁边点击加号创建一个新的Composite,会自动生成Up,Down,Left,Right四个方向的行为

 * 我们一一对键位进行设置,Up设置为键盘上的w键位

 * 四个键位都设置好了之后就可以保存并关闭这个界面,并在刚刚打开的角色上找到PlayerInput组件,将刚刚创建的输入添加为行为映射并运行游戏

*  可以看到角色移动没有问题,当然,原本官方已经配置好了包括鼠标视角跟随,角色跳跃,角色移动等按键的输入,没有必要自己再写一套输入(默认的配置如下图)

 

### 如何添加角色技能的输入?

* 新建行为并添加一个binding,设置好对应键位和可以在哪个平台上使用就可以了

 

 ### 当然仅仅添加键位还是不行的,还要在代码中添加,打开脚本StarterAssetsInputs

* 我刚刚添加了AEQ三个攻击方式,代码添加如下

 

 * 布尔值可以代表着该按键是否被按下,用来后期处理输入和角色技能释放的过程

### 接下来进行按键按下角色状态转换的代码,在角色身上挂载着ThirdPersonController,打开并添加相关的变量

 接下来就是动画状态机的处理,下一篇文章继续说吧

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值