粒子效果
粒子从原点生成,随时间不同,其速度方向、朝向等均在变换,总体的轨迹类似一条运动的彩带,粒子到一定距离后湮灭。同时,粒子不是一个简单的sprite,而是某种网格体。
Niagara蓝图部分
这个Niagara System中正式介绍了Attribute属性这一个概念。这些属性是伴随着各种脚本的一些存储的数据,他们有不同的层级(system,emitter,particle),意味着他们能够共享的程度不同。可以在参数面板,点击“+”号来自定义属性。
效果实现分析
引入新的Emitter Attribute:SineWave,并设置其值。这里是采用Emitter的Age年龄乘以0.2,再取这个值的正弦值作为SineWave属性值,可见,这个值是一个随时间动态变换的量(连续),其取值范围是-1到1。
这里的初速度的赋予换了一种方式,利用欧拉变换,表示将向量(0,0,100)绕Pitch(x)轴旋转Emitter.SineWave*24。其中Pitch与前面定义好的SineWave直接挂钩,同时Delt Time表示对速度的采样间隔,以Sinewave赋予也可以让变化更为得平滑。同时,初始朝向以粒子的速度作为初始值(Add velocity会将其值写入到这个particle velocity属性里)。
后面进一步的,在Particle Update里实现方向和大小的更新
最后渲染器方面,选择了Mesh Renderer,即渲染一个Mesh网格体作为单个粒子,其中也有一些列的参数和配置可供编辑。
总结
这个例子已经可以看到粒子的多变和复杂性了,即以一个动态变化的数据作为另一个属性的计算依据,用一个参数进行中间量的存储和转化,同时计算的方式也可以是千变万化的(如本例中的sin计算)。通过这个例子,能够初步体会到属性这一概念的重要性和可玩性了。