译注:相关链接尚未完善,访问时可能遭遇 404,你可以先 查看原文 。
基础概念
本页介绍了使用输入系统会涉及到的基础概念。也包括当用户向你的游戏或应用发送输入时发生的一系列事件步骤。输入系统已经实现了这些步骤,不过你也可以选择绕过输入系统来亲自实现其中的一部分步骤。

| 概念 | 描述 |
|---|---|
| 用户(User) | 游玩你的游戏,或使用你的应用程序的人。他们通过握持或触摸输入设备来进行输入。 |
| 输入设备(Input Device) | 当我们在讨论输入相关的话题时,通常可以将其简称为“设备”或“外设”。这是指物理硬件设备,如键盘、手柄、鼠标或触摸屏。外设用于将用户输入发送到 Unity 中。 |
| 控件(Control) | 输入设备上独立的各个部分,每个部分都能向 Unity 发送输入值。例如,手柄有多个按钮、摇杆和扳机控件;而鼠标有底部的 X 和 Y 轴传感器,以及顶部的各种按钮和滚轮控件。 |
| 动作(Action) | 动作是一个高级概念,用于描述用户在你的游戏或应用中可能会执行的具体操作,例如游戏中的“跳跃(Jump)”,或屏幕 UI 中的“选择(Select)”。动作是用户通过输入而在游戏或应用中可以执行的操作。凭借动作,你可以无需关心用户使用的是什么设备或控件。通常根据你的项目概念性名称来为动作命名,并且通常应该是动词。例如“跑(Run)”“跳(Jump)”“蹲下(Crouch)”“使用(Use)”“开始(Start)”“退出(Quit)”。 |
| 动作表(Action Map) | 动作表可以将动作分成组,每一个分组代表了只有在某个特定场合内才有逻辑关联的一组动作。按照不同的场合来将动作分组成表在将来是非常有好处的,因为你可以同时启用或禁用某个动作表中的所有动作。例如,你可以用一个表来控制玩家动作,用另一个表来控制游戏 UI 交互。 |
| 绑定(Binding) | 绑定定义了动作和特定设备控件之间连接关系。绑定主要分为两种类型:
|
| 你的动作代码(Your Action Code) | 根据你配置的动作来在脚本中执行的部分。在代码中,你可以获取动作的引用,并读取动作的当前值或状态(这也叫“轮询”);或者也可以设置一个回调,在执行动作时调用你自己写的方法。 |
| 动作资产(Action Asset) | 一种资产类型,其中包含已设定的动作表配置、动作配置和绑定配置。你可以在项目中指定一个动作资产作为 项目全局动作(project-wide actions),随后可以在代码中使用 InputSystem.actions 轻松引用这些动作。 |