Unreal engine5实现类似鬼泣5维吉尔二段跳

ops/2024/11/18 6:46:53/

系列文章目录

文章目录

  • 系列文章目录
  • 前言
  • 一、实现思路
  • 二、具体使用蓝图+状态机+蓝图接口
  • 三、中间遇到的问题

前言

先看下使用Unreal engine5实现二段跳的效果
在这里插入图片描述

一、实现思路

在Unreal Engine 5 (UE5) 中使用蓝图系统实现类似于《鬼泣5》中维吉尔的二段跳效果,可以通过以下几个步骤来实现:

  1. 创建玩家控制器
    首先确保你的项目中已经有了一个玩家控制器(Player Controller)或者角色(Character),如果还没有的话,可以在Content Browser中右键选择“New Actor” -> “Character”,创建一个新的角色。

  2. 设置角色的跳跃属性
    在你的角色蓝图中,打开Character Movement组件的设置,确保Jump Z Velocity(跳跃初速度)和Air Control(空中控制)等属性已经调整到适合你的游戏需求。

  3. 添加二段跳逻辑
    接下来,在角色蓝图的Event Graph中添加二段跳的逻辑。

3.1 检测是否可以二段跳
创建一个布尔变量CanDoubleJump,用于记录角色是否可以执行二段跳。
当角色首次跳跃时,设置CanDoubleJump为True。
在角色落地时,重置CanDoubleJump为False。
3.2 实现二段跳功能
创建一个函数TryDoubleJump,在这个函数中检查CanDoubleJump是否为True。
如果可以二段跳,则调用Jump()函数让角色再次跳跃,并立即将CanDoubleJump设置为False,防止连续触发二段跳。
3.3 绑定输入
在Event Graph中,找到输入事件(例如,按下空格键)。
将这个输入事件连接到TryDoubleJump函数,这样当玩家按下跳跃键时会尝试执行二段跳。
4. 调整跳跃动画
为了使二段跳看起来更加真实,你需要为角色创建或调整跳跃动画。这可能涉及到动画蓝图(Animation Blueprint)中的状态机和混合空间(Blend Space)。

  1. 测试和调整
    完成上述步骤后,你应该能够在编辑器中测试二段跳功能。根据实际效果调整跳跃高度、空中控制等参数,直到达到满意的效果。

二、具体使用蓝图+状态机+蓝图接口

1.使用的状态机在这里插入图片描述
2.使用的蓝图接口
在这里插入图片描述
3.使用的变量
在这里插入图片描述
4.角色蓝图

在这里插入图片描述

三、中间遇到的问题

1.正常情况下按一次空格键只跳一次,但是出现一次空格键跳了无数次,刚开始是以为动画循环播放的原因,结果发现不是循环播放的问题,而是蓝图接口用错了
在这里插入图片描述
2.解决办法:
(1)双击蓝图接口
在蓝图接口动画蓝图类:BHH_ABP_Base
在这里插入图片描述
(2)鼠标双击进入BHH_ABP_Base,定义Jump UP接口
在这里插入图片描述
(3)把Event Jump Up复制到角色蓝图BHH_BP_Player中新建的事件图表Action中

在这里插入图片描述


http://www.ppmy.cn/ops/134641.html

相关文章

IDEA报包不存在,但实际存在

IDEA版本2024.2.1 现象 在IDEA里启动运行项目,报某个类有问题,引入的包不存在。 点击这个引入的包,可以看到它在左侧外部库里存在。 试过的无效方法 双击ctrl,在弹出框中mvn idea:idea在文件里,清空缓存并重启在右…

⽂件内容的读写

文件 InputStream (字节流读出 抽象类) InputStream 只是⼀个抽象类,要使⽤还需要具体的实现类 FileInputStream(字节流读出) OutputStream(字节流写入) Reader(字符流读入&#xff…

vue2和vue3:diff算法的区别?

Vue 2 和 Vue 3 在 diff 算法方面的主要区别是: Vue 2 使用普通的 diff 算法,它会遍历所有的节点进行比对。 Vue 3 引入了 patch flag 的概念,并且对 diff 算法进行了优化,比如在相同层级的节点间不会去递归比对已经被移除的节点…

023、ELK 从入门到实践

ELK 从入门到实践 第一章:ELK基础概念 1.1 为什么需要ELK? 传统日志处理的痛点 日志分散 应用部署在不同服务器需要逐个登录查看无法统一管理 查询困难 只能用grep等命令无法复杂检索分析效率低 展示受限 纯文本格式无法可视化难以直观展示 ELK的解决方案 集…

iOS 键盘弹出视图精准上移

1 视图精准位移,需要计算出输入框距离屏幕底部的距离,然后 计算出输入框需要上移的距离,就是整个视图需要上移的距离, 注意,我们可以自行设置一个适当的buffer,我这里是40,就是输入框距离 键盘有一个40的距离&#xf…

Angular框架:构建现代Web应用的全面指南

文章目录 前言一、Angular简介二、Angular的核心特性三、Angular的应用场景四、Angular的发展趋势五、如何开始使用Angular结语 前言 在当今高度竞争的互联网环境中,构建高效、响应迅速且易于维护的Web应用成为企业成功的关键。Angular框架以其强大的功能、灵活的架…

IPv6基础知识

IPv6是由IEIF提出的互聯網協議第六版,用來替代IPv4的下一代協議,它的提出不僅解決了網絡地址資源匱乏問題,也解決了多種接入設備接入互聯網的障礙。IPv6的地址長度為128位,可支持340多萬億個地址。如下圖,3ffe:1900:fe…

K8s学习笔记之了解k8s的网络模型

文章目录 docker 网络模型容器与容器之间,容器与宿主机之间如何通信容器访问外部网络外部网络访问容器 k8s 网络模型CNIpod 网络配置流程 k8s 热门网络插件介绍Flannel 来源Calico 来源Cilium 来源 k8s 网络插件的工作模式Flannel 的工作模式Calico 的工作模式BGP 和…