UE4_Niagara基础实例—10、位置事件

效果:

若要为烟花火箭创建尾迹效果,则可将 生成位置事件(Generate Location Event) 模块放置到火箭发射器的粒子更新(Particle Update)组中。然后,尾迹发射器可使用位置数据生成跟随火箭的粒子。我们要做的事情是在这条条带的粒子位置上生成粒子散出去。

效果图如下:

步骤:

1、首先我们要生成事件Generate Location Event。

2、勾选需要持久ID,错误解决。

3、添加个Simple Sprite Burst来响应事件。

4、我们需要把发射器更新下的Spawn Burst Instantaneous模块删除掉。我们是在添加事件处理器下来响应事件的。设置好事件处理器属性及收到之后产生一个粒子。

5、位置需要接收,Receive Location Event

6、粒子大小太大了

修改粒子大小

效果如图:

看得不是很清晰,可以让粒子发散出去,加点初速度,可以改变颜色。

效果如图:

知识点:

在许多情况下,需要一个系统中的多个发射器相互交互,才能打造出所需的效果。通常情况下,这意味着一个发射器生成一部分数据,然后其他发射器侦听该数据,并执行一些行为来响应该数据。在Niagara中,此操作使用 事件(Events)事件处理器(Event Handlers) 来完成。事件(Events) 是生成粒子生命周期中发生的特定事件的模块。事件处理器(Event Handlers) 是侦听生成事件然后启动某种行为来响应该事件的模块。

当前版本中,事件无法结合GPU模拟使用。事件仅能CPU模拟使用。

要使用事件,必须在发射器的发射器属性(Emitter Properties)中启用"需要持久ID(Requires Persistent IDs)"。

位置事件

生成位置事件(Generate Location Event) 模块放置到发射器的粒子更新(Particle Update)组中时,该发射器中生成的每个粒子将在其生命周期内生成位置数据。然后可以设置事件处理器(Event Handler),接收该位置数据并触发其他行为。举例而言,若要为烟花火箭创建尾迹效果,则可将 生成位置事件(Generate Location Event) 模块放置到火箭发射器的粒子更新(Particle Update)组中。然后,尾迹发射器可使用位置数据生成跟随火箭的粒子。

事件处理器

事件处理器由两部分组成:事件处理器属性(Event Handler Properties)接收事件(Receive Event) 。针对需要发射器予以响应的每个事件,添加 事件处理器属性(Event Handler Properties) 项和 接收事件(Receive Event) 模块。

事件处理器属性(Event Handler Properties) 中,使用下拉列表设置事件的 源(Source)。该下拉列表列出了所有可用的生成事件(Generate Event)模块。然后可以选择受事件影响的粒子,每帧事件发生的次数;若事件生成粒子,则可选择生成粒子的数量。

设置事件处理器(Event Handler)的属性后,请选中一个接受事件(Receive Event)。它必须与放置在生成事件发射器的粒子更新(Particle Update)组中的生成事件模块相匹配。

举例而言,若在发射器中放置 生成位置事件(Generate Location Event) ,则可为事件处理器(Event Handler)选择 接收位置事件(Receive Location Event) 模块。

相关推荐
DoomGT5 天前
UE5 - C++项目基础
c++·ue5·ue4·虚幻·虚幻引擎·unreal engine
危险库6 天前
【UE4/UE5】在虚幻引擎中创建控制台指令的几种方法
c++·ue5·游戏引擎·ue4·虚幻
小江村儿的文杰8 天前
UE4通过打开DumpShader开关查看ShaderError的引用路径
ue4
FlyingMindIndex012 天前
UE_ContrlRig
ue5·ue4
HELLOMILI13 天前
[UnrealEngine] 虚幻引擎UE5下载及安装(UE4、UE5)
游戏·ue5·游戏引擎·ue4·虚幻·软件需求
小江村儿的文杰13 天前
UE4报错 Unable to instantiate UnrealEd module for non-editor targets
ue4
pop_opo_14 天前
Unreal Engine 4.27 + AirSim 无人机仿真环境搭建:澳大利亚农村场景更换教程
ue4·无人机
小江村儿的文杰1 个月前
UE4 UAT 的六大流程 build cook stage pacakge archive deploy 与UAT的参数
ue4
小江村儿的文杰1 个月前
UE4 Rider调试时添加自定义命令行参数
ue4
小江村儿的文杰1 个月前
UE4 Mac构建编译报错 no template named “is_void_v” in namespace “std”
macos·ue4