UE4/5Niagara粒子特效学习(使用UE5.1,适合新手)
目录
创建空模板
创建粒子
粒子的基础属性
粒子的生命周期
颜色
大小设置
生成的位置
Skeletal Mesh Location的效果:
Shape Location
添加速度
添加Noise力场
在生成中添加:
效果:
编辑
在更新中添加:
效果:
控制粒子过程的大小
控制粒子过程的颜色
添加风的立场
结束
笔者这里使用的是UE5.1
理论很多,但如果只看理论,就无法去学会,所以迈开第一步很重要:
创建空模板
首先我们创建一个空的Niagara系统。
进来之后就发现就一个蓝色的板块,暂时我们不需要管它。
创建一个新的发射器,同样是要空的:
创建粒子
添加之后,发现场景中仍然没有粒子,这是正常的,因为我们并没有对发射器进行添加。所以在发射器更新那里, 添加Spawn Rate,并设置生成的数量:
可以看见我们就有了粒子出现了:
粒子的基础属性
找到系统给我们默认生成的这个 Initialize Particle,里面是粒子生成的一些基础属性:
很多都写着Unset,这是没有进行设置的意思,所以我们可以对其进行设置:
粒子的生命周期
粒子的生命长短,顾名思义是你指定还是进行随机。
指定一个生命周期就是一个固定值,比如2【单位是秒】就是2秒。
随机的话会给你一个最大值和最小值,你进行设置,比如最小是1,最大是5,则生成的粒子的生命周期就是在1s至5s之间。
颜色
可以看到里面有对Unset(未设置),Direct Set(直接设置),Random Range(随机范围),Random Hue/Saturation/Value(随机的色相/饱和度/值)
意思顾名思义,所以你可以选择一个自己喜欢的颜色去进行设置。
这里笔者就选择Direct Set,直接对颜色进行一个设置:
大小设置
粒子的大小打开可以看到有五种:
Unset【未设置】,Uniform【统一的】,Random Uniform【随机均匀】,Non-Uniform【不均匀】,Random Non-Uniform【随机不均匀】。
具体的作用顾名思义,各位可以试试:
这里的话笔者就指定Unifotm,做一个固定的值10,可以看到变小了很多:
生成的位置
现在我们生成的粒子都集中在中心点,那么我们想要它形成为一种形状,所以我们可以在粒子生成的地方进行一个添加,我们找到Location里面:
各位可以测试一下里面不同的Location,里面的效果也是十分的有趣的:
比如
Skeletal Mesh Location的效果:
可以看到隐隐约约有人形,如果我们生成的粒子多一点呢:
Shape Location
这里我们使用Shape Location,因为里面有一些常用的形状合集。
可以自己选择想要的生成范围:
这里笔者选择的是Box:
甚至在这里,可以发现它会问你,要的是Box【盒体】范围生成,还是Plane【平面】范围生成。
这里的范围自然可以自己去调整。
添加速度
我们可以添加一个速度,让粒子向上飘:
添加之后会发现出现了报错:
它需要的是依赖性模块,SolveForcesAndVelocity:
这个模块的名字其实已经写的很明白了:解算力和速度。
添加即可:
在z轴添加一个正向的50速度。
可以看见现在的粒子是一种向上飘的状态:
添加Noise力场
现在虽然粒子会向上飘,但是我们希望它在向上飘的过程中,可以有一种相对混乱的状态,所以我们可以对立场进行添加:
【为什么我们在粒子更新里面进行添加,而不是在粒子生成里面呢?】
【原因也很简单,因为粒子是在生成的时候会调用这个立场,而在更新中会持续的进行一个调用,就和蓝图中的begin和tick一样的原理。】
在生成中添加:
在生成中添加这个立场,那么会发生什么呢?
添加立场之后发生报错,缺少依赖,添加以后,再写下数值300,500:
效果:
可以发现,他们的飞向目标已经乱七八糟了:
在更新中添加:
可以看到里面有很多的力场:
不过我们使用的是Cur Noise Force,这个立场是:添加到瞬态。使用旋度噪声场的力。在默认情况下,采样一个中等分辨率的烤平铺旋度噪声场,可以选择直接采样一个单纯形衍生的旋度函数,但会增加成本。
效果:
写下数值300,500:
可以发现现在的粒子在向上的过程中产生了混乱的效果。
控制粒子过程的大小
粒子的大小,我们在上面就已经知道可以在开始的时候设置为固定或者随机。
而现在我们想要粒子可以在向上移动的过程中改变粒子的大小应该怎么做呢?
可以看见有对Mesh和对粒子的大小的控制,我们不选择跟随速度变换大小,而是Scale Sprite Size。
可以看到默认就给了一个均匀的曲线控制:
这种情况下,我们自然也是可以进行修改的:
一样是四种方式,大家可以都测试一下方法,我们现在就需要这个默认的即可。
我们有两个地方去调节这个曲线,一个是右边,一个是曲线窗口,而曲面窗口这里会告诉你,你选择的曲线是哪个发射器里面的哪个模块内部的哪个曲线。
曲线中添加方式有两种,右键添加与中键。
调整的时候可以选择对其,或者自己去输入参数:
具体的效果可以自己去进行调节。
控制粒子过程的颜色
流程和之前一样,我们选择Scale Color:
选择之后,我的Scale Color在解算器的下面,我们将其拉到上面。
原因很简单,发射器的执行都是从上到下的,就和蓝图是从左到右一样。
我们的颜色要放到上面,否则可能导致结果不符合预期
同样是3个选择,我们选择第二个,一起进行调节:
然后将固定的这个值给位曲线的方式:
使用的方法和ps中一样,点击选择之后再点击一次即可,上面选择颜色,下面选择透明度。
按没有的地方则生成一个标。
添加风的立场
添加之后会发现不知道为什么,仍然没有产生效果,哪怕将参数调的很大也是一样,这是因为我们没有添加重力,所以还需要添加一个重力:
修改参数:
结束
重力自己决定是否修改,然后可以看到效果已经有了。
第一个粒子特效便完成了,当然如果想要在这个Niagara里面添加更多的特效,只需要添加发射器即可:
然后不论是做烟雾或者其他的效果都是如此。
相关文章:

UE4/5Niagara粒子特效学习(使用UE5.1,适合新手)
目录 创建空模板 创建粒子 粒子的基础属性 粒子的生命周期 颜色 大小设置 生成的位置 Skeletal Mesh Location的效果: Shape Location 添加速度 添加Noise力场 在生成中添加: 效果: 编辑 在更新中添加: 效果&…...
from moduleA import * 语句 和import moduleA 的区别
from moduleA import * 语句和import moduleA 的区别是: from moduleA import * 语句会将moduleA模块中的所有内容(函数、变量、类等)直接导入到当前模块的命名空间中,这样就可以直接使用它们,而不需要加上模块名的限…...

【leetcode 力扣刷题】交换链表中的节点
24. 两两交换链表中的节点 24. 两两交换链表中的节点两两节点分组,反转两个节点连接递归求解 24. 两两交换链表中的节点 题目链接:24. 两两交换链表中的节点 题目内容: 题目中强调不能修改节点内部值,是因为如果不加这个限制的话…...

学会Mybatis框架:让你的代码更具灵活性、可维护性、安全性和高效性【二.动态SQL】
🥳🥳Welcome Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于Mybatis的相关操作吧 目录 🥳🥳Welcome Huihuis Code World ! !🥳🥳 一.Mybatis动态SQL如何应用 1.需求 2.…...
Oracle 中 ROWNUM 使用问题记录
ROWNUM 使用问题记录(2023-08-17) Oracle 版本: 19.0.0.0.0 Enterprise现象:今天在项目遇到一个问题,测试人员反馈前一天能看到的数据今天看不到了 用表格举例,这是前一天看到的数据,有9、7、1 这几个数量信息 日期…...

MySQL数据库:内置函数
日期函数 规定:日期:年月日 时间:时分秒 函数名称作用描述current_date()当前日期current_time()当前时间current_timestamp()当前时间戳date(datetime)返回datetime参数的日期部分date_add(date,interval d_value_type)在date中添加…...

【C++杂货铺】探索string的底层实现
文章目录 一、成员变量二、成员函数2.1 默认构造函数2.2 拷贝构造函数2.3 operator2.4 c_str()2.5 size()2.6 operator[ ]2.7 iterator2.8 reserve2.9 resize2.10 push_back2.11 append2.12 operator2.13 insert2.14 erase2.15 find2.16 substr2.17 operator<<2.18 opera…...

c++ day1
定义一个命名空间Myspace,包含以下函数:将一个字符串中的所有单词进行反转,并输出反转后的结果。例如,输入字符串为"Hello World",输出结果为"olleH dlroW",并在主函数内测试该函数。 …...

变动的Python爬虫实现
在电商时代,了解商品价格的变动对于购物者和卖家来说都非常重要。本文将分享一种基于Python的实时监控电商平台商品价格变动的爬虫实现方法。通过本文的解决方案和代码示例,您将能够轻松监控商品价格,并及时做出决策。 一、了解需求和目标 在…...

mybatis-plus--配置-(sql)日志输出-自动填充-分页-多数据源-逻辑删除
写在前面: 本文主要介绍mybatis-plus的配置,以后在有的时候在补充。欢迎交流。 文章目录 日志输出自动填充分页全局字段配置多数据源 日志输出 调试的时候需要看执行的sql,这时候就很需要日志来记录查看了。 mybatis-plus的日志配置在yml…...

数据API服务管理功能:解放数据潜力,提升业务效率
数据API服务的重要性 在数字化时代,数据被认为是企业的重要资产。数据API服务的管理功能能够有效帮助企业实现数据的整合和利用。通过合理的数据API服务管理,企业可以更好地解放数据潜力,提升业务效率。 解放数据潜力 数据API服务管理功…...

云南森林火灾vr消防模拟安全演练系统训练消防员火灾和事故的适应和应对能力
据统计,每一场破坏性地震发生后,会引发次生的灾害,而火灾是其中之一。导致火灾的原因,推测是地震时使供电线路短路,引燃易燃物,火灾就随即发生。所以,在日常生活中,定期的消防演练还是非常必要的, VR消防,是VR公司深圳华锐视点利用VR虚拟现实技术,将VR和…...

(6)(6.2) 任务命令
文章目录 前言 6.2.1 概述 6.2.2 导航命令 6.2.3 条件命令 6.2.4 DO命令 前言 本文介绍了 Copter、Plane 和 Rover 切换到自动模式时支持的任务指令。 !Warning 这是一项正在进行中的工作,尚未经过全面审核。有关 Copter 的更佳列表,请…...

【consul】
consul 一、什么是服务注册与发现1.11.2 二、 什么是consul2.1定义2.2特性2.2.1服务注册与发现:2.2.2健康检查:2.2.3Key/Value存储: 三、consul部署-datacenter :指定数据中心名称,默认是dc1。consul :指定…...
Electron环境搭建
Electron是一个优秀的开源框架,用于构建跨平台的桌面应用程序。它基于Chromium和Node.js,使得开发者可以使用Web技术(HTML、CSS和JavaScript)来构建可在Windows、macOS和Linux等多个操作系统上运行的应用程序。本文将介绍如何搭建…...

MinIO线上扩容实战
硬件投入肯定是随着业务的增长而增长,这就要求中间件平台必须提供水平伸缩机制,MinIO对象存储服务也不例外,本文就详细介绍MinIO的扩容。 Minio支持通过增加新的Server Pool来扩容老的集群。每个Server Pool都是一个相对独立的故障域&#x…...
【微服务】微服务的概论
微服务:构建面向为了解决这个问题,微服务架构应运而生。本文将向您介绍微服务的概念、优势、实现原理以及应用场景,带您领略微服务在构建面向未来的高效应用中的魅力。 一、微服务的概念和优势 微服务是一种将应用拆分为一系列小型、独立服…...

基于Jenkins自动打包并部署docker环境
目录 1、安装docker-ce 2、阿里云镜像加速器 3、构建tomcat 基础镜像 4、构建一个Maven项目 实验环境 操作系统 IP地址 主机名 角色 CentOS7.5 192.168.200.111 git git服务器 CentOS7.5 192.168.200.112 Jenkins git客户端 jenkins服务器 CentOS7.5 192.168…...
jvm 运行时数据区
Java虚拟机定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启动而创建,随着虚拟机退出而销毁。另外一些则是与线程一一对应的,这些与线程对应的数据区域会随着线程开始和结束而创建和销毁 1.1程序计数器 程序计数器也叫pc寄存器 可以看作是当前线程…...

Jobs Portal求职招聘系统源码v3.5版本
Jobs Portal求职招聘系统 是为求职者和公司发布职位而开发的交互式求职招聘源码。它使求职者能够发布简历、搜索工作、查看个人工作列表。 它将提供各种公司在网站上放置他们的职位空缺资料,并且还可以选择搜索候选人简历。 除此之外,还有一个管理模块供…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

使用SSE解决获取状态不一致问题
使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件,这个上传文件是整体功能的一部分,文件在上传的过程中…...

Python训练营-Day26-函数专题1:函数定义与参数
题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...