长按事件也是游戏中的常见需求,长按事件的蓝图实现和代码实现思路不太一样,虽然节点用的不多但逻辑有点绕,本文详细解读一下实现方法,并且用宏制作一个拿来即用的长按事件处理节点

长按事件(Key Hold event)

  • 玩家按下某指定按键,并且在一定时间内(一般0.2秒左右)没有抬起该按键,就会触发一个长按事件
  • 触发完毕以后如果玩家依然不抬起该按键,并不会继续触发长按事件,除非抬起以后再次按下
  • 如果玩家按下该按键,但没有等到规定时间就抬起了,不会触发长按事件,而是触发一个短按事件

基本原理

使用宏实现


在图上我已经给节点起了名字以方便大家对应

Pressed事件

无论长按事件还是短按事件都是以按键按下为起点的

  1. 所以当有了Pressed事件以后做了三件事:
    1.1 计时器重新计时(序列1计时器
    1.2 开启长按事件门序列1长按事件门Open
    1.3 开启短按事件门序列1短按事件门Open

  2. 如果计时器到了规定的时间(比如:0.2秒)并且此时长按事件门依然开着(计时器长按事件门Enter序列3),这就意味着玩家已经完成了长按的操作:

    2.1 关闭短按事件门序列2短按事件门Close),因为这一轮操作已经不会触发短按事件
    2.2 触发长按事件

Released事件

  • 如果玩家抬起按键发生在长按事件产生前,那么它会阻止本次长按事件的发生,并且产生一个短按事件
  • 如果玩家抬起按键发生在长按事件产生后,那么它什么也不会触发

所以当有了Released事件,它就做两件事:

  1. 关闭长按事件门序列2长按事件门Close
  2. 尝试产生短按事件序列2短按事件门EnterOutputs

使用方法

虚幻引擎图文笔记:长按事件(Key Hold event)的蓝图实现相关推荐

  1. 虚幻引擎图文笔记:用蓝图实现简单的碰撞以及碰撞响应

    现实世界中的碰撞现象大家都司空见惯,比如:一枚硬币掉到地板上(和地板发生碰撞),发出清脆的响声.但在虚拟世界里,这个过程至少要分为两个步骤: 碰撞:硬币和地板发生碰撞 碰撞响应:系统获取碰撞事件,然后 ...

  2. 虚幻引擎图文笔记:蒙太奇(Montage)+ 根运动(Root Motion),给我滚(Roll)!

    UE4.26 效果 按下自定义控制滚动的按键,角色滚动,并且可以穿过低矮的空间 文章目录 效果 前言 步骤 0. 准备Root Motion的角色滚动动画素材 1. 把这个动画序列转换为蒙太奇 2. ...

  3. 虚幻引擎图文笔记:使用MixamoConverter对Mixamo动画重定向成UESkeleton匹配动画

    这个方法的好处在于不用导入到UE4再折腾了,因为导入的动画直接匹配UE Skeleton.最适用于各种洁癖和强迫症 效果图 Mixamo动画直接完美应用在UESkeleton,无需在UE4内部重定向! ...

  4. 虚幻引擎图文笔记:使用Rider的开发环境配置(5月22日 更新)

    Unreal Engine 4.25.0 Rider For Unreal Engine 2020.1.3 大名鼎鼎的IDE神器制造商Jetbrains的Rider听说过没?就是可以做Unity的C# ...

  5. 虚幻引擎图文笔记:用Two Bone IK实现手扶墙

    效果 文章目录 效果 原理 步骤 角色蓝图 动画蓝图 Event Graph Amin Graph 运行一下 原理 在<虚幻引擎插件:使用Power IK轻松愉快地实现脚底板位置矫正>一文 ...

  6. 虚幻引擎图文笔记:使用VAT(Vertex Aniamtion Texture)制作破碎特效(Houdini,UE4/UE5)上 Houdini端

    免责声明: Houdini小白,现学现卖,纯笔记.如有误导不负任何责任.本文参考了Houdini官方的<Lightning Strike FX>教程 文章目录 效果演示(UE4/5) 什么 ...

  7. 虚幻引擎图文笔记:使用布料模拟(Cloth Simulation)系统制作一面可以随风飘动的旗帜(更新)

    本文使用引擎版本:UE4.26 UE4的布料系统真是强大,可以在游戏运行时实时解算布料出动画.本文以一面随风飘动的旗帜的制作为例,带大家了解一下UE4布料模拟(Cloth Simulation)系统的 ...

  8. 虚幻引擎图文笔记:如何让带骨骼的角色捡东西(Pickup)和扔东西(Drop)

    效果 [教程辅助视频]如何让带骨骼的角色实现捡东西(Pickup) 文章目录 效果 原理 步骤 1. 定义被捡物体类 2. 定义BPI_Picker接口 3. 在骨骼上添加插槽(Socket) 4. ...

  9. 虚幻引擎图文笔记:蓝图中二项切换节点(Flip Flop)的用法

    书接上文<UE4基础:UMG (二)按钮及事件绑定>,将按钮事件绑定的逻辑按照下图链接 点击按钮,这样输出结果就可以在A和B两条分支间切换了,非常适合构造开关一类的逻辑

最新文章

  1. redis的分布式解决方式--codis (转)
  2. 使用babel编译es6
  3. rest-framework:权限组件
  4. 雅虎开源CaffeOnSpark:基于Hadoop/Spark的分布式深度学习
  5. JavaScript总结01
  6. 操作系统--文件管理之索引
  7. LeetCode 45. 跳跃游戏 II(贪心/BFS,难)
  8. BootStrap笔记-信息提示框的使用
  9. 统计sql server数据库中所有表的记录数
  10. linux虚拟机网卡无法启动
  11. 依赖注入原理,作用,注入方式——Spring IOC/DI(二)
  12. 《深入理解Nginx》 学习笔记(二)
  13. RS485_PTZ_云台控制
  14. 中标麒麟打包qt(Shell文本)
  15. Python学习记录 使用百度aip模块(API Python-SDK)实现人脸识别
  16. android水波进度条,Android--水波纹进度条
  17. java-集合框架库-HashMap
  18. JAVA 去除字符串首尾特定字符
  19. 连接池以及连接池的使用
  20. js 中从JSON中取出某个属性的值

热门文章

  1. 18散列表(上):Word文档中的单词拼写检查功能是如何实现的
  2. 伦敦证券交易所即将放弃衍生品业务
  3. ChatGlm-6B多张显卡的web_demo.py
  4. 面试官:说说new操作符具体都干了什么?
  5. VB6.0中用户类和数据源类的设计和使用技术
  6. OkHttp3源码详解
  7. Air系列模块驱动lcd显示
  8. linux删除文件命令 rm,rm 删除目录及文件
  9. 项目沟通管理-沟通渠道:沟通渠道数量计算
  10. CorelDRAW中的图框改如何精确剪裁