当前位置:   article > 正文

UE5 VR版增强输入初体验 官方模板学习_ue5 vr按键映射

ue5 vr按键映射

问题

我们传统的输入方式,是通过编辑器设置输入操作映射,然后BindAction和BindAxis绑定

请添加图片描述

这边插播一条增强输入知识点,参考知乎大佬文章
和增强输入的VR模板教学:如何使用VR模板在UE5中使用增强输入系统_哔哩哔哩_bilibili

实践操作

我们进入VR模板,通过一个jump案例,了解使用规则,首先新建一个Input Action,命名IA_JUMP。

请添加图片描述

然后我们在IMC_Default新建映射Jump,设置输入按键时Oculus的Touch A按键

请添加图片描述

我们在VR_Pawn蓝图里发现设置Mapping Context的方法,Add Mapping Context包含了Priority设置了输入的优先级别,可以在适当时候屏蔽某些输入,例如打开背包是按键E,但是同时Pawn可以和门有互动动作,也是按键E,这时候设置优先级(0是最高优先级),进行输入屏蔽,确保我们打开背包时,开不了门。

请添加图片描述

InputAction方法包含了下面这些状态,具体可以参考虚幻文档虚幻引擎中的增强输入 | 虚幻引擎5.1文档 (unrealengine.com)

触发状态

触发状态(Trigger State) 表示动作的当前状态,例如 已开始(Started)进行中(Ongoing)已触发(Triggered)已完成(Completed)已取消(Canceled) 。通常,你将使用"已触发"状态。你可以绑定到C++和蓝图中的特定状态。

  • 已触发(Triggered): 动作已触发。这意味着它完成了所有触发器要求的求值。例如,"按下并松开"触发器会在用户松开按键时发送。

  • 已开始(Started): 发生了开始触发器求值的某个事件。例如,"双击"触发器的第一次按下将调用"已开始"状态一次。

  • 进行中(Ongoing): 触发器仍在进行处理。例如,当用户按下按钮时,在达到指定持续时间之前,"按住"动作处于进行中状态。根据触发器,此事件将在收到输入值之后对动作求值时触发每次更新。

  • 已完成(Completed): 触发器求值过程已完成。

  • 已取消(Canceled): 触发已取消。例如,"按住"动作还没触发之前,用户就松开了按钮。

在VrPawn蓝图中中进行蓝图连连看,输出一个jump started的bebug文本

请添加图片描述

我们需要确保IMC_Default在PMI_VRTemplate被设置,下图所示,右侧一排数字表示默认的优先级顺序。

请添加图片描述

倒数第二步,我们需要确保项目设置中,这些参数正确设置。
请添加图片描述

最后成功输出文本请添加图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/472684
推荐阅读
相关标签
  

闽ICP备14008679号