一、导入Input System包 打开包管理器,搜索Input System,点击右下角安装。 安装完成会弹出警告框,点击Yes 这一步会重启编译器并禁用旧的Input Manager,如果想重新启用Input Manager,可以在项目管理->Player->活动输入处理中进行选择: 选择输入管理器(旧)代表仅启用Input Manager 选择输入系统包(新)代表仅启用Input S...
Use in control scheme 则是设备类型,他们的值含义如下 Keyboard&Mouse:键盘和鼠标 Gamepad:游戏手柄 Touch:触摸屏 Joystick:摇杆 XR:VR/AR设备 接下来,我们就手动添加一个自定义的“InputAction” 我们点击“Actions”右边的加号,添加一个新的“InputAction”,命名为“Test”。接下来,我们来查看“Test”右边的“Ac...
Scheme Name可以设置每一类别的名称,下方列表可以添加相应的设备,设置好设备后,相应Scheme的InputAction的输入就只能选择该设备 只选择的Gamepad设备的Scheme,就只能选择Gamepad进行输入 添加完成后,列表上就出现之前创建的Scheme的名字 这个时候,选择任意一个输入,Bnding Properties面板上就出现了新的Use In Control Scheme...
在需要的按键下勾选你创建的Scheme,就代表这个按键是在这个Scheme中使用别的Scheme不能使用,不勾选为全局可用 如图切换Scheme后绑定的按键消失 绑定后无需修改代码即可使用 5.重新绑定 例如重新绑定Jump ...playerInputAction.Player.Disable();//先将启用的关掉playerInputAction.Player.Jump.PerformInteractiveRebinding...
紧接上一篇Input System的内容,我们来创建控制器。 首先可以先新建这个Schemes【这个是用于分类控制器的,比如使用手柄就只能使用手柄不能和键盘混用】。 右键绿色框的位置,会出现下面这个界面。 输入好名字,然后点击+添加设备(我研究了8个小时,终于找到我的Input system没有响应的原因,就是创建了Scheme但是没有添加设...
我们将Jump下面的Binding归类到Keyboard下,Walk下面的Binding归类到Mouse下。然后保存,代码不用动。选中PlayerInput面板,我们看到此时的面板与之前已经变得不一样了,原因在上方灰字有解释。 修改后的面板 Default Scheme表示当前默认启用的ControlScheme,此处虽然显示Any并不是所有的Scheme同时生效,个人感觉把"Any"换成“De...
在打开的界面中,找到InputSystem并且点击安装,我这里安装过了 如果弹出界面,选择Yes去启用新的输入系统 后续也可以在Edit > Project Settings > Player中找到Active Input Handling选项,选择使用旧版输入系统还是新版输入系统,亦或是两个同时存在 InputActions创建 ...
对于InputSystem,Unity 使用了名叫 Input Action 的配置文件来记录键位的信息。所以我们需要在空白的位置,右键创键一个新的 Input action 后双击编辑。 打开后,新建一个 Action Map,然后我们需要在 Actions 里添加上需要响应的动作,并绑定上想要的键位。
对于InputSystem,Unity 使用了名叫 Input Action 的配置文件来记录键位的信息。所以我们需要在空白的位置,右键创键一个新的 Input action 后双击编辑。 打开后,新建一个 Action Map,然后我们需要在 Actions 里添加上需要响应的动作,并绑定上想要的键位。
PlayerInput组件 该组件是新版InputSystem中包含的玩家输入组件,它需要和ActionAsset资源配合使用,挂载到操作对象上之后,将ActionAsset设置到Actions项上并为它选择默认的ActionMap即可将两者连接。 随后注意到Behavior选项,其下有四个选项,分别是SendMessage,BroadcastMessage,InvokeUnityEvent和InvokeCSharpEvent。