粒子效果
粒子从原点生成,向上匀速运动,到一定距离后湮灭,同时在每个粒子的生命周期内,其大小和透明度有着明显的变化,可以初步估计,大小和透明度跟粒子当前所处的生命周期内的位置有关。
Niagara蓝图部分
这个Niagara System是一个入门的Niagara粒子系统,其中布满了官方书写的注释帮助使用者理解其中的各个部分:左侧的蓝色系统脚本控制粒子系统的生命周期,是最外面一个层级的粒子控制脚本。其中的很多属性可以在后面的模块里进行重写。同时这部分创建出来的属性变量,可以在后续由该系统内的发射器和粒子去访问,同时这部分数据也会顺着system->emitters->particles的顺序流动。右侧的橘黄色脚本是负责控制发射器(上,橘黄色),粒子模块(中偏下,绿色)和渲染器模块(最下方,粉红色),分别可以调控发射器、粒子和最终每个粒子单位的渲染。其上的小“+”号可以帮助我们增加功能模块,如在粒子刷新阶段添加一个持续的速度或者力等。
效果实现分析
首先设置了一个生成速率spawn rate
然后设置一个沿着z轴的初始速度(particle spawn组里,表示只在粒子生成的那一帧起作用)
实现粒子的大小(size)和透明度(Color->Alpha)的变化:两条曲线的横坐标都是粒子的生命周期(Particle命名空间下的NomalizedAge,是粒子的属性参数之一,即归一化后的年龄,0代表刚出生,1代表生命尽头)。
在Particle Update的最下方,需要加上力和速度的解算器(Solve Force and Velocity),由他来将所有加的力、速度甚至于碰撞体等进行综合解算。他也是虚幻官方库提供的一部分,可以进入节点进行改写和扩展,以适应不同的项目需要。
最后渲染器方面,选择了Sprite Renderer,即渲染一个精灵图片(默认总是面向镜头)作为单个粒子。
总结
作为官方Niagara内容示例的第一个粒子演示,这个例子算是揭示出了Niagara System最外显、最通用的一些功能模块,其中涉及到了,粒子的参数的应用,曲线,力和速度的解算等等。后续1系列的粒子会在这个基础上进行变换和扩展,难度和这个相当。我也会依次对他们进行解读。