UE4中UMG响应按键输入事件

前言

一般在游戏设计UI时,我们会为UI加入操作快捷键,例如快速贩卖,快速排序包裹,技能栏快速切换等。为了逻辑的统一,按键的响应我们提倡放到UI中,这样操控逻辑入口就稳定了!

在虚幻中,UMG如何响应用户按键输入事件呢?这其实非常简单!

 

 

目的

将用户的按键输入事件传递到UMG中,在UMG中响应逻辑。

当然你可以选择有输入组件能力的角色进行事件传递,但这处理起来很麻烦,我们需要角色持有UMG的对象指针,并且需要维护数据对象。

 

步骤

  1. 构建UMG
  2. 将UMG显示到窗口中
  3. 在用户输入事件列表中注册输入事件
  4. 在UMG中绑定输入事件

 

在项目用户输入列表中加入如下输入事件

图一

在UMG中加入如下蓝图内容

图二

 

进行测试即可!在没有开启UMG时,角色蓝图中Fire事件可以响应。当开启UMG后,角色蓝图中Fire事件失效,UMG中的Fire事件响应(注意图二中的Fire事件是自定义的,名称你可以随意)。

注意

  • UMG中只能响应Action事件,如果需要响应Axis事件需要自行编写逻辑
  • 勾选Consume则事件只传递到当前UMG,不会向下传递,如果需要向下传递,可去掉节点中的勾
  • Action Name是在用户输入事件列表中注册的名称

 

虚幻版本 4.19.2

添加评论

您的电子邮箱地址不会被公开。