本文仅作笔记学习和分享,不用做任何商业用途
本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正
首先你应该了解新输入系统的基本单位和输入配置文件
Unity新输入系统 之 InputAction(输入配置文件最基本的单位)-CSDN博客
Unity新输入系统 之 InputActions(输入配置文件)-CSDN博客
本文大篇幅引用了唐老狮的笔记,凡是写了绿色注释的都来源唐老狮,为了方便所以不再一一标注
1.Player Input
Input System | Input System | 1.10.0 (unity3d.com)
Player Input是用于解析输入配置文件以实现输入的组件 ,是新输入系统封装的最后一部分,也就是说在这一部分,就可以真正的脱离繁杂的输入代码,将重点放在游戏逻辑即可,好好学
添加组件
大部分参数没有门槛,很好理解的就不谈了
自动创建的InputAcitrons会自动定义一些基础手势(事件)
2.监听方式
Player Input最重要的内容也就是监听方式
Send Messages
就是你写一个脚本,将其挂载到和palyerinput同一个对象上,此模式会自动匹配你脚本中对应的函数,并且发送信息订阅事件
自带的一些函数(注意引入命名空间)
自定义行为使用方法为On+行为名(只举一个栗子)
public void OnMove(InputValue inputValue)
{
print("输入了"+ inputValue);
}
InputValue
有没有注意到一个参数?InputValue ,这个参数可以在输入时微调一些逻辑,不难用
Broadcast Messages
还是直接将脚本挂载到相同对象上,但是不同于Send Messages的点是可以挂载到子对象上,要不然为什么叫广播消息呢,嘻嘻
Invoke Unity Events
该模式就是可视化事件系统,可以查看此文章:
unity保姆级教程 之 UnityEvent可视化事件类_unity麦扣-CSDN博客
直接挂载对象然后使用函数(方法)就行了,太方便辣
Invoke C sharp Events
利用委托或事件订阅的方式添加函数,其实之前都是这么用的也算是老套路了
3.Player Input Manager
对多玩家输入的管理器,一般用于本地多人游戏(类似双人成行)
用的比较少,有需要查看手册即可