虚幻UE 增强输入-触发器

上一篇增强输入基础:虚幻UE 增强输入-第三人称模板增强输入分析与扩展
主要对第三人称模板的增强输入进行分析、复刻和扩展
本篇将会对增强输入中的触发器中的各参数进行讲解

文章目录

  • 前言
  • 触发器参数
    • 1、下移TriggerDown
    • 2、已按下TriggerPressed
    • 3、已松开TriggerReleased
    • 4、弦操作TriggerChordAction
    • 5、点按TriggerTap
    • 6、脉冲TriggerPulse
    • 7、长按TriggerHold
    • 8、长按和松开TriggerHoldAndRelease
    • 9、组合TriggerCombo
  • 总结
  • 参考


前言

触发器作为增强输入四大概念其中之一,我们上一篇文章也对其作用进行了说明,
在参数讲解的开始、我们再一次回顾一下概念。

输入触发器(UInputTrigger): 使用经过修饰器修改的输入值,
或者使用其他输入动作的输出值,来确定是否激活输入动作。

触发器参数

1、下移TriggerDown

在这里插入图片描述
在这里插入图片描述

参数只有:驱动阈值
驱动阈值是按压的程度,没按压是0(0默认不起作用,得大于0),按压到底是1
驱动阈值有效范围(0,1]
键鼠无法测试,只能靠手柄进行测试。
大于驱动阈值,且在有效范围时才能触发开始
触发逻辑如下:
在这里插入图片描述

先:开始Started(一次)
然后:触发Triggered(持续)
最后:完成Completed(一次)
这是正常进行的方式、但是由于无法测试按键程度,所以无法测试其他结果。

2、已按下TriggerPressed

在这里插入图片描述

参数只有:驱动阈值
同上面逻辑一模一样,不再说明。
触发逻辑如下:
在这里插入图片描述

先:开始Started(一次)
然后:触发Triggered(一次)
最后:完成Completed(一次)
这是正常进行的方式、但是由于无法测试按键程度,所以无法测试其他结果。

3、已松开TriggerReleased

在这里插入图片描述
在这里插入图片描述

参数只有:驱动阈值
同上面逻辑一模一样,不再说明。
触发逻辑如下:
按压未松开时
按压松开时

先:开始Started(一次)
然后:持续Ongoing(持续,直到松开)
再:触发Triggered(一次,松开时)
最后:完成Completed(一次)
这是正常进行的方式、但是由于无法测试按键程度,所以无法测试其他结果。

4、弦操作TriggerChordAction

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参数有:驱动阈值(同上)、弦操作
弦操作是按键同时按下才会产生逻辑。
为了更方便的查看信息,我们打开debug调试窗,输入:
ShowDebug EnhancedInput
在这里插入图片描述

只点击鼠标触发逻辑如下:在这里插入图片描述
此时没有打印消息是因为点击左键设置了弦操作,得两键同时按下

空格跳跃结束前点击鼠标左键触发逻辑如下:
在这里插入图片描述
一定要是在跳跃完成前按下鼠标左键才有效,按下鼠标不松时则一直为Trigger

点击鼠标左键松开前点击空格跳跃触发逻辑如下:
在这里插入图片描述
一定要在鼠标松开之前按下跳跃空格,在跳跃结束时逻辑结束

先:开始Started(一次,弦操作中任一一个按键结束前按下其他按键触发)
然后:触发Triggered(持续)
最后:完成Completed(一次,弦操作中全部按键结束后触发)
这是正常进行的方式、但是由于无法测试按键程度,所以无法测试其他结果。

5、点按TriggerTap

在这里插入图片描述
在这里插入图片描述

参数有:驱动阈值(同上)、点按释放时间阈值、受时间膨胀影响
点按释放时间阈值:当释放时间小于该值则正常结束,当大于该值则非正常结束。
受时间膨胀影响:如果为真,点按释放时间阈值得乘以时间膨胀的倍数

正常结束触发逻辑如下:(小于该值)
在这里插入图片描述
释放时间内松开鼠标触发完成

非正常结束触发逻辑如下:(大于该值)
在这里插入图片描述
超过释放时间则触发取消

先:开始Started(一次)
然后:持续Ongoing(持续)1/2,判定条件释放时间
1:
再:触发Triggered(一次,释放时间内松开)
最后:完成Completed(一次)
2:
最后:取消Canceled(一次,释放时间内未松开)
这是正常进行的方式、但是由于无法测试按键程度,所以无法测试其他结果。

6、脉冲TriggerPulse

在这里插入图片描述
在这里插入图片描述

参数有:驱动阈值(同上)、受时间膨胀影响(同上)、开始时触发、间隔、触发限制
开始时触发:在按下的一瞬间开始直接接触发Trigger
间隔:触发间隔时间
触发限制:0则无限制,限制次数,大于改次数时直接触发结束
间隔0.2s触发限制3次触发逻辑如下:
在这里插入图片描述
间隔0.2s触发限制无限次触发逻辑如下:
在这里插入图片描述

先:开始Started(一次)
然后:触发Triggered(一次,勾选开始时触发)
再:持续Ongoing(持续,期间按间隔触发Trigger)
最后:完成Completed(触发限制不为0,且触发限制次数完成,否则输出Cancel)

7、长按TriggerHold

在这里插入图片描述
在这里插入图片描述

参数有:驱动阈值(同上)、受时间膨胀影响(同上)、保存时间阈值,为一次性
保存时间阈值:按压时间超过该数值正常触发完成(未超过则触发取消)
为一次性:触发Trigger的次数,为真则一次,否则持续。
超过保存时间阈值(0.2),为一次性为真触发逻辑如下:
在这里插入图片描述
未超过保存时间阈值(0.2)触发逻辑如下:
在这里插入图片描述

先:开始Started(一次)
然后:持续Ongoing(持续)
再:触发Trigger(持续/一次/无,为一次性为真则一次,非正常结束则无,否则持续)
最后:完成Completed/取消Cancel(一次,按压时间超过该数值正常触发完成)

8、长按和松开TriggerHoldAndRelease

在这里插入图片描述
在这里插入图片描述

参数有:驱动阈值(同上)、受时间膨胀影响(同上)、保存时间阈值
保存时间阈值:按压时间超过该数值正常触发完成(未超过则触发取消)
超过保存时间阈值(0.2)触发逻辑如下:
在这里插入图片描述
未超过保存时间阈值(0.2)触发逻辑如下:
在这里插入图片描述

先:开始Started(一次)
然后:持续Ongoing(持续)1/2(正常结束1,非正常结束2)
1:(超过保存时间阈值)
再:触发Trigger(一次)
最后:完成Completed(一次)
2:(未超过保存时间阈值)
最后:取消Cancel(一次)

9、组合TriggerCombo

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

重点参数有:组合操作中的组合步操作、组合步骤完成状态、取消操作、按键的时间
组合步操作:按数组顺序按键触发组合技
组合步骤完成状态:在前一个动作完成状态完成之前按下下一个按键才能触发
按键的时间:对第一个按键无意义外,在前一个按钮结束该时间间隔内按下下一个按键才能组合成功
取消操作:在组合按键结束前按下则取消组合按键逻辑效果
这部分展示起来很麻烦,展示最常见的两种效果:
组合连接成功:
在这里插入图片描述
组合连接失败:(超过了按键的时间)
在这里插入图片描述
此部分就不分析执行逻辑了,过于复杂了。

总结

触发器很强大,对于按键控制很有趣,大家可以多尝试尝试!
然后最需要说一下组合和弦操作

组合:先后
弦操作:同时

参考

B站UP布兰德儿老蒋:虚幻引擎倾囊相授计划:增强输入系统教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/598842.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开启远程工作之旅

远程工作绝对是未来的趋势。 不管是全职还是兼职,远程办公更加提供了更加自由的工作环境,再好的办公环境有家里舒服吗🐶? 而现在所有远程办公的平台,目前对新手最友好的,我个人觉得是云队友平台。 不仅提供…

cesium粒子爆炸效果

效果: //添加爆炸模型window.swpecesium.addEntity.addModel({id: "model",position: {lon: 116.34516786934411,lat: 39.99753297677145,},config: {url: "./model/baozha/scene.gltf",minSize: 200,maxSize: 300,},});var scene viewer.scen…

接口测试测什么?一个简单问题把我难住了!

那么设计测试用例时我们主要考虑如下几个方面: 01、功能测试 接口的功能是否正确实现了 接口是否按照设计文档中来实现 (比如username参数写为了user,那么这就不符合,因为接口文档在整个开发中都需要使用,所以接口实…

60V降12V3A降压芯片WT6037

60V降12V3A降压芯片WT6037 WT6037是一款高压同步降压转换器,可在10V到90V的宽输入电压范围内工作适用于宽电压输入12V-72V电池组系统降压和60V-90V降压应用。WT6037可提供4A连续负载电流,转换效达92%。 WT6037采用具有内置补偿的固定频率峰值电流控…

Element ui 改变el-transfer 穿梭框的大小

修改el-transfer 左右两个穿梭框的高度和宽度,具体效果如下正常大小的穿梭框修改之后的,主要在style中加上如下样式即可 /deep/ .el-transfer-panel{ width: 470px; /* 左右两个穿梭框的高度和宽度 */ height: 450px; } /deep/ .el-transfer-panel__li…

element的Table表格组件树形数据与非懒加载

1.代码实现 <template><div><el-row :gutter"10" class"mb8"><el-col :span"1.5"><el-button type"info" plain icon"el-icon-sort" size"mini" click"toggleExpandAll"&g…

Java面试题之集合篇

前言 本篇主要总结JAVA面试中关于集合相关的高频面试题。本篇的面试题基于网络整理以及自己的总结编辑。在不断的完善补充哦。欢迎小伙伴们在评论区发表留言哦&#xff01; 1、基础 1.1、Java 集合框架有哪些&#xff1f; Java 集合框架&#xff0c;大家可以看看 《Java 集…

[运维|gitlab] docker Gitlab 命令行后台修改密码

参考文献 docker Gitlab 初始化账号以及密码是什么呢 修改密码 进入容器 docker exec -it gitlab bash进入bin目录 进入gitlab的bin目录 cd /opt/gitlab/bin执行命令 执行gitlab-rails console gitlab-rails console执行命令 找到root的用户&#xff0c;输入uUser.where…

【每日面试题】Docker常见面试题精选

什么是Docker容器&#xff1f; Docker容器是一种轻量级的虚拟化技术&#xff0c;可以将应用及其依赖项打包在一个可移植的容器中&#xff0c;以便在多个环境中运行。 Docker镜像和容器之间有什么区别&#xff1f; Docker镜像是一个包含了应用程序及其依赖项的只读模板&#xf…

C#上位机与欧姆龙PLC的通信10----开发专用的通讯工具软件(WPF版)

1、介绍 上节开发了一个winform版的通讯测试工具&#xff0c;这节再搞个wpf版的&#xff0c;wpf是什么&#xff1f;请自行百度&#xff0c;也可以看前面的博客&#xff0c;WPF真入门教程&#xff0c;wpf的界面效果是比winform漂亮&#xff0c;因为wpf使用了web项目中的css样式…

java发送邮件到qq邮箱

自己的授权码自己记好 引入依赖 <dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><version>1.6.2</version> </dependency> <dependency><groupId>javax.mail</groupId>&…

Socket与TCP的关系

前言 相信大家对于TCP已经非常熟悉了&#xff0c;学习过计算机网络的同学对于它的连接和断开流程应该已经烂熟于心了吧。 那么Socket是什么&#xff1f; Socket是应用层与TCP/IP协议簇通信的中间软件抽象层&#xff0c;它是一组接口。在设计模式中&#xff0c;Socket其实就是…

车位关键点检测-车位识别-车辆识别检测(教程+代码)

车位关键点检测、车位识别和车辆识别检测是现代智能交通系统中的重要技术&#xff0c;它们在提高停车管理效率和交通流畅度方面起着重要作用。以下是对这三个技术的分点阐述&#xff1a; 1. 车位关键点检测&#xff1a; 车位关键点检测是指通过计算机视觉技术&#xff0c;自动…

Docker中镜像的相关操作

1.辅助操作 docker version&#xff1a;用查看docker客户端引擎和server端引擎版本信息。 docker info&#xff1a;用来查看docker引擎的详细信息。 docker --help&#xff1a;用来查看帮助信息。 2.镜像Image docker images&#xff1a;查看当前本地仓库中存在哪些镜像。 …

解决uniapp打包成apk后uni.getStorageSync获取不到值

uniapp写的项目&#xff0c;在hbuilderx中云打包成apk后我在登录存储的token死都获取不到&#xff0c;导致后续接口请求头没有token连接不到接口&#xff0c;只有运行到手机或者模拟器还有打包成apk后是获取不到&#xff0c;其他的小程序还有网页都可以获取到 试过了很多种方法…

【递归】C++算法:124 二叉树中的最大路径和

作者推荐 【动态规划】【字符串】扰乱字符串 本文涉及的基础知识点 递归 124. 二叉树中的最大路径和 二叉树中的 路径 被定义为一条节点序列&#xff0c;序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点&#x…

Android linphone-android sdk设置语音编码问题

1.遇到的问题 今天遇到linphone-android sdk需要解决语音编码问题&#xff0c;需要指定编码。查了下配置&#xff0c;里面没有发现类似的配置。 ## Start of factory rc # This file shall not contain path referencing package name, in order to be portable when app is r…

基于SpringBoot+thymeleaf的养老院管理系统(Java毕业设计)

大家好&#xff0c;我是DeBug&#xff0c;很高兴你能来阅读&#xff01;作为一名热爱编程的程序员&#xff0c;我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里&#xff0c;我将会结合实际项目经验&#xff0c;分享编程技巧、最佳实践以及解决问题的方法。无论你是…

rtsp超分推流流程(一)

记录一下rtsp 推流的流程 播放一个RTSP的流需要如下的RTSP请求命令&#xff1a; OPTIONS -> DESCRIBE -> SETUP -> PLAY 然后就是接收RTP包、播放了 抓包分析出来&#xff0c;推流的RTSP请求命令如下&#xff1a; OPTIONS -> ANNOUNCE -> SETUP -> RECORD …

本地引入Element UI后导致图标显示异常

引入方式 npm 安装 推荐使用 npm 的方式安装&#xff0c;它能更好地和 webpack 打包工具配合使用。 npm i element-ui -SCDN 目前可以通过 unpkg.com/element-ui 获取到最新版本的资源&#xff0c;在页面上引入 js 和 css 文件即可开始使用。 <!-- 引入样式 --> <…