【UE Niagara】蓝图获取粒子数据

目录

效果

步骤

一、创建粒子

二、创建蓝图接收Niagara参数


效果

步骤

一、创建粒子

  1. 新建一个Niagara发射器,使用Empty模板,打开后先添加"Spawn Rate"模块,这里设置粒子生成速率为0.7

在"Initialize Particle"模块中设置粒子颜色为随机,设置粒子大小为20cm

添加"Gravity Force"模块,让粒子受到重力自由落体

再添加一个"Collsion"模块,用于判断粒子是否发生碰撞

  1. 对Niagara发射器创建Niagara系统,将Niagara系统移入场景,可以发现粒子正常产生碰撞
  1. 打开Niagara系统,添加一个**"Export Particle Data to Blueprint"**模块,该模块包含了导出的条件、导出的数据、以及怎么导出等选项

这里设置产生碰撞为导出条件。在"Collsion"模块中,勾选"显示参数写入"

可以看到该模块包含了碰撞是否有效的参数"CollsionVaild"

因此,在"Export Particle Data to Blueprint"模块中,把导出条件就设置为碰撞是否有效这个参数

设置导出粒子的位置、颜色和大小

然后我们需要设置一个导出的回调处理器参数

在用户参数面板中添加一个"Object"类型参数

这里就命名为"BPCallback"

回调处理器参数设置为"BPCallback"

二、创建蓝图接收Niagara参数

新建一个Actor蓝图,在蓝图中添加一个Niagara组件,设置Niagara系统资产为我们上面创建Niagara系统

在事件图表中添加如下节点

在蓝图的类设置中,设置已实现的接口为"Niagara粒子回调处理器"

此时引擎就会自动添加接收Niagara粒子数据接口

选择"实现事件"

此时事件图表中就会创建"事件接收粒子数据"节点

我们可以打印一下输出的信息

最终效果如下

参考视频:

https://www.bilibili.com/video/BV1fN411n7GM/?p=25&spm_id_from=pageDriver

相关推荐
夜猫逐梦12 天前
【UE基础】03.蓝图与编辑器工作流
编辑器·ue·蓝图·ue编辑器
夜猫逐梦13 天前
【UE基础】02.基类与蓝图子类的分工
ue·蓝图·ue基础
夜猫逐梦13 天前
【UE基础】01.环境与引擎心智模型
游戏·逆向·ue·unreal·actionrpg
数峦云数字孪生三维可视化16 天前
数字孪生可视化架构选型:基于UE像素流送与Web引擎的完整决策指南
数字孪生·ue·web3d·技术选型·像素推流
挨代码20 天前
UEC++ 数据类型及继承关系
c++·ue
挨代码1 个月前
UE Mobility
ue
晴夏。1 个月前
UE 常见IK算法
ue·ik
晴夏。1 个月前
UE 网络同步之 为什么属性复制比RPC更节省性能
ue·网络同步
晴夏。2 个月前
unlua实现原理
游戏·ue5·ue4·lua·ue·unlua
晴夏。2 个月前
c++调用lua的方法
c++·游戏引擎·lua·ue