Unity 新输入控制系统Input System简单用法

Unity 新输入控制系统Input System简单用法

添加

Window->Package Manager->Input System(如果找不到,勾选上Advanced->Show preview packages),然后点击install安装并导入。

Unity 新输入控制系统Input System简单用法
在Preject自己喜欢的文件夹上右键Create->Input Actions完成创建并改名为MyControls,然后双击创建好的Input Actions。

Unity 新输入控制系统Input System简单用法
Unity 新输入控制系统Input System简单用法

键盘移动

在Action Maps中添加一个控制组,如添加Player,在Actions中将第一个Action改名为自己需要的控制名称Move,将Preperties中的Action Type和Control Type修改成Pass Through和Vector2。

Unity 新输入控制系统Input System简单用法
点击Move右方的“+”号,添加Add 2D Vector Composite,并将默认的右键删除。

Unity 新输入控制系统Input System简单用法
绑定完成后点击Save Asset,并且选择MyControls,勾选Generate C# Class,点击Apply,自动生成MyControls脚本。

Unity 新输入控制系统Input System简单用法
Unity 新输入控制系统Input System简单用法
然后在场景中创建一个Cube,并新建脚本Test挂载到Cube上。

Unity 新输入控制系统Input System简单用法
Unity 新输入控制系统Input System简单用法
运行游戏,输入wsad控制方块移动。

新版本的InputSystem自动生成的脚本(MyControls)不能序列化,只能new。
初次导入InputSystem可能脚本不会生效,需要重启Unity。

鼠标输入

添加MouseDown、MouseUp、MouseDrag三个Action。
MouseDown、MouseUp监听Button类型,当鼠标左键按下和释放时触发。

Unity 新输入控制系统Input System简单用法
MouseDrag监听鼠标移动事件,返回Vector2类型坐标。

Unity 新输入控制系统Input System简单用法
点击Save Asset保存修改。
修改Test脚本。

Unity 新输入控制系统Input System简单用法
运行游戏,当可以看到按下、释放右键,和移动鼠标时的输出。