UE4 Simulation Stage 制作 平流

第一步:

先将Sprite Render里面将Source Mode还为Emitter

下面Bindings里面有Emitter的SpriteFacing和SpriteAlignment的变量,在左侧的Emitter Attributes里面创建该两个变量,最后在Emitter Spawn里面设置SpriteFacing和SpriteAlignment的初始值


创建5个需要的变量:

TS:TextureSample        主贴图

RT:RenderTarget        将RenderTarget的Size为256 * 256

Grid2D:Grid2D Collection        将Buffer的Format设置为半精度浮点数(精度越高细节越多,看项目需要,再将Num Cells X/Y设置为256

Noise:TextureSample        设置扰动图,将UV进行扰动

SpriteSize:Vector2D        整个贴图的显示大小

将本地空间打开(根据你的需求调整)

Simulation Stage需要GPU粒子,所以开启GPU粒子然后开启Fixed Bounds

最后打开Enable Simulation Stage的开关

将材质设置上去,材质编写在下面:

最主要是看这个FillRT的图片变量,然后我们又回到Niagara界面

这里面将材质放进去了,在Material Parameter Bindings里面点击“+”号,里面的Material Parameter Name里面就有材质里面的变量,这里面用Fill RT(材质里面的贴图变量)

然后将Niagara的RT变量传给材质,然后粒子输出具有材质的Sprite,就可以看到RT绘制的样子

这里有三个Simulation Stage的模块

点击Add Simulation Stage的“+”号就可以加上Simulation Stage的模块

Simulation Stage最大的优势就是能够多次效果迭代,模拟更丰富的效果

这里我们把Iteraction Source设置为Data Interface,迭代次数为1

Data Interface 设置为模块输出的变量就行,这里写为Grid2D

这里看第一个Cal RGBA模块

输入为Grid2D(Emitter),TS(Emitter),将Grid2D的索引转为UV,对TS按照Grid2D转化出的UV进行采样,每次把上一帧的RGBA进行淡化(乘以0.8),再加上本帧采样的贴图效果

再来看第二个模块

不过多解释这里的信息了

看Modify RGBA

首先看输入,Grid2D老样子Index转UV,用于采样Noise贴图,Age用于让扰动贴图进行平移

这里将扰动贴图采样的RG值(值范围在0~1),映射到-1到1,让扰动效果能在四周扰动

算出来的扰动值加上UV,对Cal RGBA模块计算出来的Grid2D中的RGBA变量进行采样,再重新赋值到RGBA中

这里的最后一个Drawing RT模块,是对RGBA绘制到RT上,最后RT给到上面说的材质中,进行显示,所以这里的Data Interface设置为RT

这里就比较简单了,就是将之前计算好的RGBA进行采样,然后设置到Render Target上,就可以进行效果展示了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值