【UE5.1 角色练习】07-AOE技能

目录

效果

步骤

一、准备技能动画 

二、准备粒子特效

三、技能蓝图

四、相机震动


前言

在上一篇(【UE5.1 角色练习】06-角色发射火球-part2)基础上继续实现角色释放AOE技能的功能。

效果

步骤

一、准备技能动画 

1. 在项目设置中添加一个操作映射,这里命名为“Attack_AOE”

2. 找到小白人的一个动画序列作为释放AOE技能的动作,这里使用名为“Anim_SLB_2”的动画序列

替换骨架

使用IK重定向器导出兼容角色骨骼的动画序列

3. 打开动画蓝图,在动画图表中添加一个状态,这里命名为“Fire_AOE”

添加一个布尔类型变量“IsFiring_AOE”,用于表示当前是否在释放AOE技能

双击进入“Fire_AOE”状态,将我们转换的AOE动画序列拖入作为输出动画姿势

编辑一下状态转换的规则

二、准备粒子特效

1. 新建一个Niagara系统,选“Omnidirectional Burst”作为模板

这里命名为“NS_AOE”

打开该粒子系统,先删除重力模块

在“属性”中,勾选“本地空间”,模拟目标设置为“GPU计算模拟”,计算边界模式为“固定”

在“Emitter State”中设置“Loop Behavior”为“Once”,让粒子只生成一次即可

设置粒子生成的数量为500

在“Initialize Particle”模块中,设置粒子生命周期为3~5s,粒子初始大小为1~2cm

添加一个“Curl Noise Force”模块,设置噪声强度为1000,噪声频率为20

在“Scale Color”中设置一下粒子的颜色

此时效果如下

为了让粒子只在有限的区域内飞舞,我们可以先添加一个自定义模块

这里命名为“Module_RadiusClamp”

在该模块中我们用到粒子的位置,然后再添加一个浮点类型的输入参数,这里命名为“Radius”,表示我们要将粒子限制在半径为“Radius”的球体范围内

由粒子的位置获取到粒子的方向和长度。其中长度是指当前粒子距出生点的距离

当粒子距出生点距离大于半径时,我们就设置粒子的位置为方向*半径;若小于就任然使用粒子自身的位置

我们将该模块添加进粒子更新中,设置“Radius”为500cm

此时效果如下,可以看到粒子被限制在半径为100cm的球形范围内

添加一个旋涡力

添加一个Collsion模块,让粒子碰到物体后能够反弹

此时粒子效果如下

三、技能蓝图

1. 新建一个actor蓝图,这里命名为“BP_Skill_AOE”

打开“BP_Skill_AOE”,添加径向力组件、Niagara系统组件、球体碰撞组件

其中,径向力组件的半径设置为500cm,和粒子范围一样

可以设置一下径向力的强度,并且关闭自动启用,只有当碰撞发生时再启用径向力

如果不想角色被推开,我们可以取消Pawn为受影响的对象

Niagara组件的系统资产使用我们在第二步中创建的Niagara系统

接下来我们希望球形碰撞组件的半径也是像粒子效果那样一开始不断扩大,最终维持在半径500cm的大小,因此在事件图表中先创建一个时间轴用于控制这个过程。

在时间轴中设置三个关键帧的位置分别为(0,0)、(0.5,1)、(3,1)

继续在事件图表中添加如下节点,让球形碰撞组件的半径在3s内由32变为500cm

当发生碰撞后就造成伤害,并且激活径向力

2. 打开角色蓝图,设置按下2键播放角色释放技能时的动画并生成技能

此时运行效果如下,可以看到释放技能的时候将一个具有模拟物理属性的方块推开了

四、相机震动

1. 新建一个蓝图选择父类为“LegacyCameraShake(旧版摄像机晃动)” 

这里命名为“CameraShake_AOE”

打开“CameraShake_AOE”,在类默认值中设置振荡时长、混入时间以及旋转振荡的振幅和频率

还有位置振荡的振幅和频率

2. 在角色蓝图中设置在释放技能的时候让摄像机晃动,其中“Scale”参数用于控制晃动的幅度

此时效果如下

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

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

相关文章

如何恢复已删除/丢失的照片/视频?

“嗨,我把我所有的世界杯照片和视频都存储在我的数码相机存储卡上。但是,当我将存储卡与计算机连接时,它会要求我格式化存储卡。我格式化了存储卡,但我所有的世界杯照片和视频都不见了。这对我来说是一场大灾难。是否有可能恢复丢…

[图解]产品经理创新模式01物流变成信息流

1 00:00:01,570 --> 00:00:04,120 有了现状的业务序列图 2 00:00:04,960 --> 00:00:08,490 我们就来改进我们的业务序列图了 3 00:00:08,580 --> 00:00:11,010 把我们要做的系统放进去,改进它 4 00:00:13,470 --> 00:00:15,260 怎么改进?…

【MATLAB】信号的熵

近似熵、样本熵、模糊熵、排列熵|、功率谱熵、奇异谱熵、能量熵、包络熵 代码内容: 获取代码请关注MATLAB科研小白的个人公众号(即文章下方二维码),并回复信号的熵本公众号致力于解决找代码难,写代码怵。各位有什么急需…

Pytorch DDP分布式细节分享

自动微分和autograde 自动微分 机器学习/深度学习关键部分之一:反向传播,通过计算微分更新参数值。 自动微分的精髓在于它发现了微分计算的本质:微分计算就是一系列有限的可微算子的组合。 自动微分以链式法则为基础,依据运算逻…

Tomcat源码解析(七):底层如何获取请求url、请求头、json数据?

Tomcat源码系列文章 Tomcat源码解析(一):Tomcat整体架构 Tomcat源码解析(二):Bootstrap和Catalina Tomcat源码解析(三):LifeCycle生命周期管理 Tomcat源码解析(四):StandardServer和StandardService Tomcat源码解析(五)&…

知攻善防应急响应靶机训练-Web3

前言 本次应急响应靶机采用的是知攻善防实验室的Web-3应急响应靶机 靶机下载地址为: https://pan.quark.cn/s/4b6dffd0c51a 相关账户密码 用户:administrator 密码:xj123456xj123456 解题过程 第一题-攻击者的两个IP地址 直接查看apache的log日志搜索.php 发现…

学习Uni-app开发小程序Day26

这一章学习的内容细节较多,主要是分为:首次加载减少网络消耗、获取图片的详细信息、图片的评分和避免重复评分、将图片下载到本地并且获取设备的授权 加载图片减少网络消耗 这里突出这个功能,是根据老师视频上的描述,个人觉得很…

Spark介绍

Spark简介 Spark,是一种通用的大数据计算框架,正如传统大数据技术Hadoop的MapReduce、Hive引擎,以及Storm流式实时计算引擎等. Spark是加州大学伯克利分校AMP实验室(Algorithms Machines and People Lab)开发的通用内存并行计算框架,用于构建大型的、低延迟的数据分析应用程序…

Python图像处理库全面详细解析

目录 引言 PIL和Pillow:基础但强大的图像处理 PIL到Pillow的演变 功能亮点 实际应用案例 Pillow的适用场景 结论 ​编辑 OpenCV:计算机视觉的瑞士军刀 OpenCV的核心特点 功能亮点 实际应用案例 OpenCV的适用场景 结论 ​编辑 Scikit-Imag…

pytest:指定测试用例执行顺序

在自动化测试中,测试用例的执行顺序有时对测试结果具有重要影响。本文将介绍如何在pytest框架中使用pytest-ordering插件以及Collection hooks来控制测试用例的执行顺序。 方式1: 使用pytest-ordering插件控制执行顺序 1.1 安装pytest-ordering插件 首…

Python编程的黑暗魔法:模块与包的神秘力量!

哈喽,我是阿佑,今天给大家讲讲模块与包~ 文章目录 1. 引言1.1 模块化编程的意义1.2 Python中模块与包的概念概述 2. 背景介绍2.1 Python模块系统模块的定义与作用Python标准库简介 2.2 包的结构与目的包的定义与目录结构包在项目组织中的重要性 3. 创建与…

用three.js+echarts给公司写了一个站点数据大屏系统经验总结

时间过的好快,参加公司的新项目研发快一年了,五一机器人项目首秀,我们遇到了高并发集中下单情景,然后海量数据处理场景来了,给我在后端领域的高并发实践业务上画上了漂亮的一笔经验。人都是在磨练中成长,我很感谢这次给我的机会,虽然有点累,但也有点小成就。正好现在有…

基于RK3568核心板的雷视融合一体机,助力交通管理智能化升级

随着5G网络与智慧交通车路协同系统在全国各点的落地,作为提升交通安全的前沿技术方案也愈发受到重视。 在交通信控领域,以往的感知技术、无论是地磁、线圈还是摄像头,功能都仅仅局限于数清经过了多少车辆,无法满足交通数字化管理…

aosp14的分屏接口ISplitScreen接口获取方式更新-学员疑问答疑

背景: 有学员朋友在学习马哥的分屏pip自由窗口专题时候,做相关分屏做小桌面项目时候,因为原来课程版本是基于android 13进行的讲解的,但是现在公司已经开始逐渐进行相关的android 14的适配了,但是android 14这块相比a…

挖矿宝藏之系统日志

什么是日志? 日志是指系统或应用程序在运行过程中产生的记录文件,这些文件记录了系统或应用程序的运行情况、错误信息、用户操作等。 日志的主要作用 记录信息:日志可以记录系统或应用程序的启动、运行、停止等状态信息,以及用户的…

sourcetree推送到git上面

官网:Sourcetree | Free Git GUI for Mac and Windows 下载到1次提交 下载后打开 点击跳过 下一步 名字邮箱 点击clone 把自己要上传的代码粘贴到里面去 返回点击远程->点击暂存所有 加载完毕后,输入提交内容提交 提交完成了 2次提交 把文件夹内的…

java方法负载问题

先介绍一下方法的重载 下面是例子 方法名都为sum而形参是不同的 记住! 是否为重载关系 1在同一个类里面 2形参不同(与返回值无关) 3方法名一样 第一个图为什么错? 答案:虽然在同一个类里面,并且方法名…

Istio ICA考试之路---5-2

Istio ICA考试之路---5-2 1. 题目2. 解题3. 容易遇见的错误3.1 错误13.2 错误2 1. 题目 Using Kubernetes context cluster-2 The httpbin workload is running with a client named sleep in the troubleshoot-1 namespace. Issue a service call from the sleep client.ku…

单条16g和双条8g哪个好

单条16g和双条8g各有优劣,具体选择要根据个人需求和电脑配置来决定。 以下是一些参考信息: •单条16g内存的价格比双条8g内存的价格低,而且16g的内存容量大,一条内存十分的方便。 •两条8g内存可以组成双通道,电脑运行速度要快一些。 •对于普通使用电脑的人群与热衷于…

ubuntu安装Stable Video Diffusion(SVD)让图片动起来

目录 写在前面 一、克隆或下载项目 二、下载预训练模型 三、创建环境 四、安装依赖 五、启动项目 六、解决报错 1.预训练模型下不来 2.TiffWriter.write() got an unexpected keyword argument fps 3.安装ffmpeg 4.No module named scripts 七、测试 写在前面 Stab…