EnhanceInput 是虚幻引擎5推出的一套现代化、功能增强的输入处理系统。它旨在解决传统输入系统在处理复杂输入场景、多设备支持与可扩展性方面的局限性。通过引入输入动作(Input Actions)、触发器(Triggers) 和修饰器(Modifiers) 等核心概念,本文就来了解一下 EnhanceInput 。
基础使用
1.以UE5.3第三人称模板为例,该模板已经使用了EnhanceInput,在如下目录可以进入默认上下文查看设置:

2.如需新增Action可以点击Mappings的+号,点击Input Action

3.例如将键盘F键绑定至交互Action中

4.按下左侧键盘图标后可以响应输入,现在按下鼠标、手柄、键盘等输入操作都会被抓取。

5.继续添加鼠标输入,现在鼠标左键和键盘F都可以响应Interact动作

6.切到玩家蓝图,直接搜索刚创建的interface即可找到对应事件(因为UE第三人称模板已做了输入上下文加入操作)

7.可以看见,输入事件比较于旧的输入系统,多了许多。

8.因为EnhanceInput自UE5.3后就取消了Axis,通过对Action支持的数据类型进行扩充,现在Axis也通过创建Action进行设置,例如现在创建一个叫做Axis2的Action,ValueType设置为Axis1D

9.键盘I和K键分别控制正负方向(负方向使用Negate修改器)

10.通过直接获取Axis2的数值,在第三人称角色蓝图中进行调试查看:

区分优先级
11.以BOSS对战中按下交互按键触发EX技能为例,先建立一个按键冲突的Action: ExSkill:

12.新建InputMappingContext,命名为BossBattle。

13.在这个InputMappingContext中,同样绑定F按键和鼠标左键

14.在蓝图中添加事件

15.找到之前EnhancedInputSubSystem添加MappingContext的位置,再次调用,将BossBattle添加并设置优先级为1。

16.测试后法线交互Action被覆盖为了ExSkill



被折叠的 条评论
为什么被折叠?



