UE蓝图 RPG动作游戏(一) day15

角色状态制作

制作角色动画混合空间

  • 创建一个动混合空间
    在这里插入图片描述
  • 添加动作在混合空间
    在这里插入图片描述

动画蓝图

  • 创建一个动画蓝图
    在这里插入图片描述
  • 先使用混合空间进行移动,后续优化后再使用状态机
    在这里插入图片描述
  • 编写垂直水平速度逻辑
  • 初始化,获取到此动画的角色组件
    在这里插入图片描述
  • 获取Horizontal与Vertical的速度逻辑
    在这里插入图片描述
  • 打开蓝图运动朝向与设置动画蓝图资产
    在这里插入图片描述
    在这里插入图片描述
  • 运行结果
    请添加图片描述

动画蓝图添加状态的变换

  • 初始化中获取到角色的移动组件
    在这里插入图片描述
  • 当加速度与移动速度都不为0时,就是在移动中
    在这里插入图片描述
  • 正在下坠时就是在跳跃
    在这里插入图片描述

状态机制作

移动

  • 创建一个Move的状态机,添加待机与移动动画,之间的转换就是通过变量IsMove进行判断
    在这里插入图片描述
    在这里插入图片描述
  • 将移动状态添加到缓存中保存
    在这里插入图片描述
  • 创建一个基础移动状态机去包含跳跃与着落等动画
    在这里插入图片描述
  • 添加移动与着陆状态,着陆到移动的转换还是IsMove变量的判断
    在这里插入图片描述
    在这里插入图片描述
  • 添加一个状态别名,ToLand到Land之间的转换就是IsFalling判断是否落地
    在这里插入图片描述
    在这里插入图片描述

跳跃

  • 添加跳跃与跳跃浮空动画和一个状态别名
    在这里插入图片描述
  • 状态别名ToLand,为跳跃与跳跃中的别名,DropOut为移动状态与落地的别名
    在这里插入图片描述
    在这里插入图片描述
  • 去事件图表中获取一下角色的移动向量
    在这里插入图片描述
  • 移动与落地到跳跃的转换逻辑是当移动速度中的Z轴大于一定的值的时候与是否起跳为真时就转换为开始跳跃
    在这里插入图片描述
  • 跳跃到跳跃中的切换只需要打开基于状态中序列播放器的自动规则即可
    在这里插入图片描述
  • 移动与落地到跳跃中的逻辑判断就是判断是否在跳跃
    在这里插入图片描述

疾跑制作

  • 在控制器中获取自己写的增加输入函数
    在这里插入图片描述
  • 这个InputLoad是映射的增强输入系统
    在这里插入图片描述
  • 创建一个输入操作用来表示按下Shift键开始奔跑
    在这里插入图片描述
    在这里插入图片描述
  • 开启相机臂延迟,编写冲刺奔跑逻辑
    在这里插入图片描述
  • 时间轴是0 600和3 1500速度
    在这里插入图片描述
  • 摄像机延迟速度与最大行走速度逻辑编写,低数值延迟高,高数值延迟低
    在这里插入图片描述

优化疾跑动画与添加Niagara特效

  • 在动画蓝图中的混合动画空间加快播放速率即可
    在这里插入图片描述
    在这里插入图片描述
  • 新建一个Niagara系统
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 在粒子更新中选择Update Mesh Reproduction Sprite,修复问题
    在这里插入图片描述
  • 选择自己的角色
    在这里插入图片描述
    在这里插入图片描述
  • 删掉我们不需要的
    在这里插入图片描述
  • 添加一个瞬间生成的粒子,数量为100
    在这里插入图片描述
    在这里插入图片描述
  • 只生成一次
    在这里插入图片描述
  • 释放粒子去掉勾
    在这里插入图片描述
  • 缩放颜色也删掉,然后改成自己需要的颜色即可
    在这里插入图片描述

在这里插入图片描述

  • 直接添加到角色组件中将这个Niagara系统
    在这里插入图片描述

控制特效播放

  • 添加一个新的发射器,还是这个fountain类型,发射器换位条带放射器
    在这里插入图片描述

  • 删除不需要的,然后随机生成换成直接设置,设置从起点添加速度
    在这里插入图片描述
    在这里插入图片描述

  • 添加一个从其他粒子发射器的发射器,选择源粒子
    在这里插入图片描述

  • 样条ID改成Apply Smapled as Ribbon ID
    在这里插入图片描述

  • 源粒子的固定ID打开
    在这里插入图片描述

  • 添加速度移动最下面来,就会变为射线,在Niagara中,都自上而下运行的
    在这里插入图片描述

  • 设置好需要的移动速度即可
    在这里插入图片描述

  • 根据自己的需要添加颜色与光效渲染效果
    在这里插入图片描述
    在这里插入图片描述

  • 首先将生成速率设置为0,然后公开绑定速率
    在这里插入图片描述
    在这里插入图片描述

  • 在控制器蓝图中获取这个Niagara特效控制速率
    在这里插入图片描述

  • 运行结果
    请添加图片描述

战备状态切换

  • 新建一个枚举类型用来切换不同武器之间的状态
    在这里插入图片描述
  • 添加一个输入操作用来切换不同武器
    在这里插入图片描述
    在这里插入图片描述
  • 创建两个蒙太奇用于插入播放
    在这里插入图片描述
  • 编写切换逻辑,新建两个变量,一个是枚举类型一个是bool类型判断是否手持武器
    在这里插入图片描述
  • 编写逻辑,用DoOnce进行循环一次,判断是否持械,没有就播放两个蒙太奇动画,设置不同的状态,播放动画之间延迟一下时间,最后改变一下移动速度,进行回溯
    在这里插入图片描述
    在这里插入图片描述

创建拳击状态的动画蓝图

  • 创建一个拳击状态的混合空间
    在这里插入图片描述
  • 在动画蓝图中获取玩家的控制器
    在这里插入图片描述
  • 新建一个武器状态的枚举变量,然后在动画蓝图中设置一下这个状态
    在这里插入图片描述
  • 在状态机列表中,新建一个状态机作为拳击与默认移动状态的切换
    在这里插入图片描述
  • 移动还是之前一样的逻辑
    在这里插入图片描述
  • 拳击也差不多
    在这里插入图片描述
  • 他们之间的转换规则就是判断枚举类型
    在这里插入图片描述
  • 将拳击状态与移动状态混合在一起即可
    在这里插入图片描述
  • 最后输出状态
    在这里插入图片描述

战备状态禁止奔跑与跳跃

  • 禁止奔跑
    在这里插入图片描述
  • 禁止跳跃
    在这里插入图片描述
  • 运行结果
    请添加图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

股票价格预测 | Python实现Autoformer, FEDformer和PatchTST等模型用于股价预测

文章目录 效果一览文章概述环境描述源码设计效果一览 文章概述 Autoformer、FEDformer和PatchTST是一些用于时间序列预测,包括股价预测的模型。它们都是在Transformer模型的基础上进行了改进和扩展,以更好地适应时间序列数据的特点。 Autoformer:Autoformer是一种自适应Tran…

软件测试/测试开发丨Python 面向对象编程思想

面向对象是什么 Python 是一门面向对象的语言面向对象编程(OOP):Object Oriented Programming 所谓的面向对象,就是在编程的时候尽可能的去模拟真实的现实世界,按照现实世界中的逻辑去处理问题,分析问题中…

继续声明 | 连声明都抄,谁抄袭谁,一目了然,现在竟然恬不知耻的反咬一口。

继续声明 | 连声明都抄,谁抄袭谁,一目了然,现在竟然恬不知耻的反咬一口。 一、本账号为《机器学习之心》博主CSDN唯一官方账号,唯一联系方式见文章底部。 二、《机器学习之心》博主未授权任何第三方账号进行模型合作、程序设计、…

【Java进阶篇】什么是UUID,能不能保证唯一?

什么是UUID,能不能保证唯一? ✔️典型解析✔️优缺点 ✔️各个版本实现✔️V1.基于时间戳的UUID✔️V2.DCE(Distributed Computing Environment)安全的UUID✔️V3.基于名称空间的UUID(MD5)✔️V4.基于随机数的UUID✔️V5.基于名称空间的UUID(SHA1)✔️各个版本总结…

我在Vscode学OpenCV 图像处理四(轮廓查找 cv2.findContours() cv2.drawContours())-- 待补充

图像处理四(轮廓查找) 一、前言1.1 边缘检测和轮廓查找的区别是什么1.1.1 边缘检测:1.1.2 轮廓查找: 1.2 边缘检测和轮廓查找在图像处理中的关系和流程 二、查找并绘制轮廓2.1 cv2.findContours():2.1.1 详细介绍&…

爬虫工作量由小到大的思维转变---<第三十章 Scrapy Redis 第一步(配置同步redis)>

前言: 要迈向scrapy-redis进行编写了;首要的一步是,如何让他们互通?也就是让多台电脑连一个任务(这后面会讲); 现在来做一个准备工作,配置好redis的同步!! 针对的是windows版本的redis同步,实现主服务和从服务共享一个redis库; 正文: 正常的redis for windows 的安装这里就…

C#,入门教程(03)——Visual Studio 2022编写彩色Hello World与动画效果

C#,入门教程(01)—— Visual Studio 2022 免费安装的详细图文与动画教程https://blog.csdn.net/beijinghorn/article/details/123350910 C#,入门教程(02)—— Visual Studio 2022开发环境搭建图文教程https://blog.csdn.net/beijinghorn/article/detail…

Hampel滤波器是一种基于中位数的离群值检测方法【异常值检测方法】

Hampel滤波器是一种基于中位数的离群值检测方法,也是一种线性滤波器,由德国数学家和统计学家John Hampel在1974年提出。它主要用于去除信号中的脉冲噪声,具有很强的抗干扰能力,因此被广泛应用于信号处理、通信系统等领域。 1.基本…

SpringBoot定时监听RocketMQ的NameServer

问题分析 自己在测试环境部署了RocketMQ,发现namesrv很容易挂掉,于是就想着监控,挂了就发邮件通知。查看了rocketmq-dashboard项目,发现只能监控Broker,遂放弃这一路径。于是就从报错的日志入手,发现最终可…

【Redis-08】Redis主从复制的实现原理

在Redis中,可以通过slaveof命令或者设置slaveof选项实现两台Redis服务器的主从复制,比如我们有两个Redis机器,地址分别是 127.0.0.1:6379 和 127.0.0.1:6380,现在我们在前者上面执行: 127.0.0.1:6379 > SLAVEOF 12…

STC8H系列单片机入门教程之NVC系列语音播报模块(九)

一、模块简述 ● 模组支持3.3V和5V单片机供电系统 ● 标准2.54MM间距排针与外部连接 ● 支持喇叭0.5W/8欧 ● 适合用于超声波距离、电子秤重量、时钟时间、温度、球赛比分等语音播报 二、引脚说明 序号 名称 说明 1 VCC 电源正(3.3V-5V&#…

『精』CSS 小技巧之BEM规范

『精』CSS 小技巧之BEM规范 文章目录 『精』CSS 小技巧之BEM规范一、什么是BEM?二、BEM要怎么用?三、不用BEM会少个胳膊吗?💊四、Sass与BEM的结合🎈五、块与修饰符应放在一块👿参考资料💘推荐博…

Android Matrix画布Canvas旋转Rotate,Kotlin

Android Matrix画布Canvas旋转Rotate,Kotlin private fun f1() {val originBmp BitmapFactory.decodeResource(resources, R.mipmap.pic).copy(Bitmap.Config.ARGB_8888, true)val newBmp Bitmap.createBitmap(originBmp.width, originBmp.height, Bitmap.Config.…

vscode调用HTML文件

vscode实现对HTML文件调用 创建html文件下载拓展内容点击拓展查找需要的拓展 导入html代码设置默认打开浏览器运行结果参考文献 做数据库课设的内容,尝试一些自己没有接触过的东西,了解如何创建一个网站以及数据库的一个应用 创建html文件 创建一个html的文件,加入后缀名 下…

docker搭建minio集群,集群分享文件URL踩坑问题

一、环境准备 3台机器,Ip地址依次为IP1,IP2,IP3二、设置服务器时间同步 Minio集群需要各个节点的时间保持同步,使用NTP作为时间同步服务,这里以Minio-1(IP1)为上游服务器,其它2个节点为下游服务器&#x…

HarmonyOS 组件通用属性之通用事件 文档参数讲解(点击事件)

我们组件中 会有很多通用的信息和方法 那么 首先 我们看通用事件 通用事件中 最常用的就是我们的点击事件 比如说 我们之前常写的 组件.onClick(()>{//事件逻辑 })但是 我们之前 都没有用它接参数 我们可以这样 Button("跳转").onClick((ewat: ClickEvent)>…

Matplotlib_艺术画笔见乾坤

文章目录 一、概述:1.matplotlib的三层api2.Artist的分类3.matplotlib标准用法 二、自定义你的Artist对象1.Artist属性 在图形中的每一个元素都对应着一个matplotlib Artist,且都有其对应的配置属性列表。2.属性调用方式 三、基本元素 - primitives1.2DL…

[MySQL] MySQL中的事物

本片文章对MySQL中的事物进行了详解。其中包含了事物的特性、为什么要有事物、查看事物版本支持、事物常见操作、事物的隔离界别等等内容进行详细举例解释。同时还深入讲解了事物的隔离性,模拟实现MVCC多版本并发控制,也讲解了RR和RC的本质区别。希望本篇…

汽车保养软件app开发步骤

“增强您的动力,为您的旅程加油——每一刻都讲述着关爱的故事。构建汽车维护软件app,为您的车辆提供数字化的维修站,从而开启长寿之路。智能驾驶、互联驾驶、自信驾驶。” 疯狂地搜索旧收据并猜测上次换油时间的日子已经一去不复返了。如果您…

LINUX 抓包工具Tcpdump离线安装教程

本次教程基于内网环境无法访问网络使用安装包进行安装抓包工具 1、首先给大家看下一共有6个安装包,依次进行解压,包我就放到csdn上了,需要的可以联系我进行下载 2打包然后传到服务器任意一个目录下,进入到当前目录,然后…