全书速查表

概念速查

概念 一句话
Input Action (IA) 动作定义,含值类型(Bool/Axis1D/2D/3D)与事件阶段
Input Mapping Context (IMC) 按键→动作映射表,可叠加、分优先级
Modifier 值加工:死区/曲线/缩放/取反/Swizzle
Trigger 时机判断:按下/按住/双击/点按/组合

事件阶段速查

阶段 何时 建议
Started 按下起始(Trigger 未满足) 起手表现
Triggered 满足条件 真正生效
Ongoing 持续每帧 持续动作(移动/开火)
Completed 正常结束 收尾表现
Canceled 中途打断 蓄力中断、退费

API 速查(C++)

// 启用/停用 IMC
Sub->AddMappingContext(IMC, Priority);
Sub->RemoveMappingContext(IMC);

// 绑定
EIC->BindAction(IA, ETriggerEvent::Triggered, this, &Handler);

// 查询
Sub->QueryKeysMappedToAction(IA, OutKeys);
Sub->GetActiveMappingContexts();

目录结构速查

Content/Input/
  Actions/   IA_*(Boolean / Axis1D / Axis2D)
  Contexts/  IMC_*(Default / Combat / UI / Vehicle / Dialogue)
  Modifiers/ 曲线、自定义修饰器
  Triggers/  自定义触发器

与其他系统的衔接

系统 衔接方式
GAS IA 触发 → TryActivateAbility(输入驱动技能)
动画 移动 IA 值驱动动画状态机(速度阈值切走/跑)
UMG InputMode + IMC_UI 优先级
网络复制 输入本地化,结果走 GAS/RPC
移动端 虚拟摇杆轴值映射 IA

延伸阅读

  • 本站官方文档:输入
  • 本系列其他书:《UE5 蓝图与 C++ 混合开发实战心得》(第 1 本:输入事件的分层)、《UE5 Gameplay Ability System 完全实战》(IA 触发 GA)、《UE5 独立项目实战》(输入系统在完整项目里的位置)。

写在最后

输入是"玩家怎么感受你的游戏"的第一层。Enhanced Input 花一番学习的功夫,换来的是手感的可配置、多设备的统一、上下文的可靠管理。下次策划说"这个键我想按住 0.3 秒触发,再按一下取消"——你回一句"改 Trigger 资产就行"。