通用输入系统概述
通用输入系统,简称GIPS,是对虚幻引擎的EnhancedInput模块的再次强化,提供一种简单且可复用的方式来响应EnhancedInput的输入事件,并提供一套机制,可以更灵活地管理和使用游戏中的输入。
同时可以很好地支持在蓝图和C++中进行开发。
在使用输入系统前,确保你对GameplayTags和EnhancedInput有一个基本的了解,本系统只是为它们提供了一个更灵活且强大的使用方式。
主要特性
- 完整支持EnhancedInput系统,简化处理输入所需的流程以及工作量。
- 提供一个InputSystemComponent来完成输入设置和管理。
- 提供一系列内置的InputProcessor(输入处理器)来处理常见的游戏输入,如移动、镜头控制。同时提供简单的API,你可以根据你的需求创建自定义的输入处理器。
- 提供基于动画的输入缓冲系统,允许你在动画播放的任意时刻,保存你的输入,并在合适的时刻触发。
- 以 InputTag 的形式配置和管理输入,允许使用 GameplayTag 来处理输入逻辑的判断(就像 GAS 一样),而无需编写大量的 If/Else 语句,从而大大简化了开发的复杂性。
减少复制粘贴
使用输入系统前是这样:

使用输入系统后是这样:

无需反复去复制粘贴相同类型的输入代码。
强迫症万岁!
简化逻辑判定
如果你要做一个战斗系统,你无需写一堆If/Else来判定普通攻击时是否可以跳跃,你无需判定跳跃时是使用地面攻击还是空中攻击。你可以将一部分的复杂性迁移到输入层面,以降低后续系统的复杂性。
你需要使用我的输入系统,然后像这样:

越是复杂困难的任务,使用通用输入系统,效果就越显著。