Unreal Cascade的参数类型详解

Cascade的参数类型

如下面视频案例,Unreal Cascade的数据类型主要有X框<Float浮点量(翻译成“Scalar标量”更合适)>、Y框<Vector向量>。标量是有大小,但不涉及方向的值,比如粒子大小Size、粒子生命LifeTime等等。Vector向量是既有大小,又有方向的值。比如发射器的位置Position、粒子的速度Velocity等等。然后这两种参数类型都是通过Z框的五种方式来设置值的。

  • 除了<Scalar标量>和<Vector向量>,还有<Color颜色>参数类型。

Scalar标量类型

如下面视频案例,标量的Constant常量是一个固定值。

  • 下面案例用的是Vector向量参数类型做的演示,因为粒子在发射默认的Sprite精灵时,只有绿框的X参数起作用,Y和Z的参数是无效的,所以这时它和Scalar标量参数类型等价的。

如下面视频案例,标量的Distribution Float Uniform是在一个区间内随机取一个值。

  • 下面案例用的是Vector向量参数类型做的演示,因为粒子在发射默认的Sprite精灵时,只有绿框的X参数起作用,Y和Z的参数是无效的,所以这时它和Scalar标量参数类型等价的。

如下面案例X框的曲线效果,其中Y框控制曲线的时间,Z框控制曲线的大小属性。该曲线用在<粒子级别的Size By Lifetime>模块,此时曲线为<标准曲线>,意思是不管<粒子>的L框LifeTime生命值是多少,曲线(0-1)的时间驱动<粒子的整个生命周期>。比如:

  • Y框(0到1)的时间代表了(粒子的整个生命周期),所以如曲线(0-1)的区间,粒子0秒时大小为100%,死亡时大小为0%。
  • Y框(0到2)的时间代表了(粒子两倍的生命周期),所以如曲线(0-1)的区间,粒子0秒时大小为100%,死亡时大小为50%。
  • 下面案例用的是Vector向量参数类型做的演示,因为粒子在发射默认的Sprite精灵时,只有绿框的X参数起作用,Y和Z的参数是无效的,所以这时它和Scalar标量参数类型等价的。


如下面案例X框的曲线效果,其中Y框控制曲线的时间,Z框控制曲线的大小属性。该曲线用在<发射器级别的Initial Size粒子初始大小>模块,此时曲线为<线性曲线>,意思是这条曲线的时间值<线性驱动发射器>的生命值。比如:

  • Y框(0到1)的时间代表了(发射器0-1秒的生命),所以如曲线效果,发射器在0秒时发射的粒子最大,在1秒时发射的粒子最小。
  • Y框(0到3)的时间代表了(发射器0-3秒的生命),所以如曲线效果,发射器在0秒时发射的粒子最大,在3秒时发射的粒子最小。

如下面案例,<Size By Lifetime>使用了Curve曲线,其中A框是曲线的效果,B框控制曲线的时间,C框和D框控制了曲线的取值范围,并且每帧都重新取一次,所以才出现下面粒子大小“不稳定”的效果。

  • 下面案例用的是白框Vector向量参数类型做的演示,因为粒子在发射默认的Sprite精灵时,只有绿框的X参数起作用,Y和Z的参数是无效的,所以这时它和Scalar标量参数类型等价的。

如下面案例,我给粒子的生命值LifeTime使用了Distribution Float Particle Param参数类型,如最后的效果,Cascade复制成了两份,但它们的LifeTime值不同。其中:

  • X框是参数命名,在Cascade的A框里就是通过这个名字来确认公开哪个参数。
  • Y框是设置Cascade的A框输入、输出的最大值和最小值。
  • Z框是在没启用Cascade的A框时,使用的默认值。

Vector向量类型

如下面案例,向量的Constant常量是控制X、Y、Z三个轴的大小。

如下面案例,向量X、Y、Z三个轴的大小,是在Min和Max和之间随机取值的。

如下面案例,发射模型粒子,<Size By Lifetime>使用了Curve曲线,其中A框是这个曲线参数类型的示意图,B框控制曲线的时间,C框控制曲线的大小属性。A框示意图的三条曲线,就是通过C框X、Y、Z的属性值控制的。

如下面案例,发射模型粒子,<Size By Lifetime>使用了Curve曲线,其中A框是这个曲线参数类型的示意图,B框控制曲线的时间,C框和D框控制了X、Y、Z三条曲线的取值范围,并且每帧都重新取一次,所以才出现下面粒子大小“不稳定”的效果。

  • 后面的<Locked Axes锁轴参数>能让下面案例的粒子“稳定”嘛?不能,因为<Locked Axes锁轴参数>控制的是粒子初始值,而下面案例是每帧都会随机取一次值。

参考上面<Scalar标量公开粒子参数>笔记。

如下面案例,Velocity的X轴参数是100,Y轴参数是0,所以粒子往X轴方向移动。当把A框Locked Axes锁轴参数设置成XY时,Y的值就会被锁定为X的值,也是100,所以最后粒子朝XY的方向移动。


如下面案例,粒子的颜色值在A框的黑和白之间Random随机取值。

  • 当B框<Locked Axes锁轴参数>为默认的None时,A框颜色的RGB三个值各自都不一样,所以粒子的颜色就是五颜六色。
  • 当B框<Locked Axes锁轴参数>设置为XYZ时,A框颜色RGB三个值中的G和B的值被锁定成和R一样,所以粒子的颜色就是在黑到白之间。
  • 不明白RGB的颜色原理,可以参考<颜色与数值关系的理解>笔记。


如下面案例,粒子发射模型,粒子的Size大小值在X框里Random随机取值。

  • 当B框<Locked Axes>为默认的None时,A框的XYZ三个值都不一样,所以粒子的大小千奇百怪。
  • 当B框<Locked Axes>设置为XYZ时,A框XYZ中的Y值和Z值被锁定成和X值一致,所以粒子的大小都是等比例的。

Color颜色类型

待整理(先参考VfxGraph参数类型笔记里的颜色)

参数类型_通用参数

如下图绿框Can be Baked参数,先说结论,就是保持默认的激活状态即可。它的作用是什么呢:

  • 当它启用时,粒子的属性假如有要实时计算的<随机值、曲线插值>,会被预先计算并储存好,运行时会直接调用这个结果,而非再次实时动态计算,从而提升性能。
  • 当它禁用时,粒子的<随机值、曲线插值>会在每一帧动态实时计算,性能开销相对更大,只有在实时变化的特效,如受物理碰撞影响的粒子才会需要禁用此选项,但我们实际开发中几乎不会用到这种情况。
图片[1]-Unreal Cascade的参数类型详解-游戏特效案例库

参数类型_Curve曲线的使用

待整理

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容