本节介绍InputSystem中的重要概念,有助于更好的理解、使用InputSystem,当你熟悉了这些概念后,你就能理解输入系统内可用的工作流程之间的区别,并选择最适合你项目的工作流程

一个完整的游戏用户输入到脚本响应的流程如下: alt

其中的基础概念有:

概念 解释
User(玩家) 玩游戏的人,通过手持或触摸输入设备并提供输入
Device(输入设备) 一件物理硬件,如键盘、游戏板、鼠标或触摸屏,允许用户向Unity发送输入
Controls(控件) 一个输入设备的独立的个体部分,如游戏手柄的摇杆和触发器,鼠标按钮和滚轮
Interactions(交互) 使用设备上的控制的不同方式,如按键按下,松开,长按或双击
Actions(动作) 动作是玩家输入对应可以做的事情,与输入设备、控件、交互无关,是一个抽象概念,比如跳跃,蹲下,使用,开始,退出
Actions Asset(动作资产) 动作的可配置文件,包含动作集合。可以绑定动作对应的控件和交互方式。
Embedded Actions(嵌入动作) 使用脚本定义的动作,可以通过Inspector面板进行绑定,但不受Action Asset管理
Binding(绑定) 一个动作和一个或多个控件的对应关系,比如“射击”动作可以和鼠标左键按下绑定。ActionAsset和Embeeded Actions都提供一个相似的UI界面来创建和编辑Binding

高级概念有(可以之后结合案例理解):

概念 解释
Processor(处理) 输入系统对一个输入值进行的操作。例如,一个 "反转 "processor可以反转一个浮点值
Phase(状态) 一项互动的当前状态,包括"开始"、"执行 "或 "取消"
Action Map 一个命名的Action集合。你可以同时启用或禁用一个动作图中的所有动作,通常我们分为Player和UI的ActionMap。
Control Schemes(控制方案) ActionMap更上一层的概念,其中可以有多个ActionMap,Control Schemes一般与相关的设备类型有关,当用户使用该类型的设备时,可以自动启用它们。

以上的概念有可能有一些抽象,尤其是Action,Action Asset,Action Map,Embedded Actions,Binding,Control Schemes,在之后我们会分别展开进行讲解。