【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

相关推荐
妙为3 天前
unreal engine5角色把敌人 “挤飞”
游戏引擎·虚幻·ue·unrealengine5
曼巴UE56 天前
UE Sequencer,MediaPlay的使用经验总结
ue5·音视频·ue
曼巴UE59 天前
UE5 C++ 里创造 和 使用编辑GamePlayTag
c++·ue5·ue
曼巴UE510 天前
UE5 C++ GameInstanceSubsystem 在学习
c++·ue5·ue
njsgcs15 天前
ue python二次开发启动教程+ 导入fbx到指定文件夹
开发语言·python·unreal engine·ue
qq_4286396123 天前
ue无双割草项目:4.让AI受伤及添加UI
ui·ue·无双割草
qq_4286396123 天前
ue无双割草项目:5.让玩家能够受伤
ue·无双割草
qq_4286396124 天前
ue无双割草项目:3.做个人工智障
ue·无双割草
qq_4286396125 天前
ue无双割草项目:2.让角色能够攻击
ue·无双割草
曼巴UE525 天前
UE GamePlayTag
c++·ue5·ue