03. 使用参数化材质表现卡通风格的火焰

概要

在前面的章节中,我们制作了一个卡通风格的火焰。 但是,参数完全内嵌于材质中,无法复用。 而且,它持续地播放,不会在中途消失。 在本章中,上一章中制作的火焰将变得更为通用。

本章制作的特效

制作

在本章中,我们将在上一章制作的特效的基础上做出更改。 为了显示清楚,我们更改了粒子的生存时间。

下载

参数

Effekseer的材质有一个名叫参数的节点。 这个叫参数的节点让你可以在Effekseer中改变材质的参数。

首先,为了从外部编辑特效的颜色,我们将把渐变图像替换为一个参数。

添加一个参数图像节点。

然后,把它连接到采样图像节点。

为参数节点输入一个名字。这个名字会显示在Effekseer中,用于将图像与Effekseer中配置的图像相关联。 因此,尽量不要更改它。 这次,因为我们替换的是渐变,我们将其命名为Gradation。

将图像的默认值设置为Textures/Gradation2.png

../../_images/Grad_Parameter_En.png

Effekseer现在也显示了渐变参数。 因为目前显示的依然是默认图像,我们将设置一个新图像。

这一次,设置为Textures/Gradation4.png

../../_images/Grad_Parameter_Editor_En.png

特效的图像已被替换。

../../_images/Fire.png

在这个例子中,我试着替换纹理,但是你也可以使用数值作为参数。

让我们将图像流动的速度设置为参数。

添加一个参数2节点。 命名为Speed。 将默认参数设置为(0.1,0.1)。

将其连接到移动UV节点的Speed。

../../_images/Speed_Parameter_En.png

Effekseer将显示速度参数,你可以改变它的值。

../../_images/Speed_Parameter_Editor_En.png

更改它的值将改变速度。 在这个例子中,默认值就很合适,所以我们将值保留在(0.1,0.1)。

这些可以在外部设置,无需将参数内置于材质中。

自定义数据

就像现在这样,你只是将参数外部化了,但火焰依旧是连续地流动。 自定义数据可用于设置开始和结束。

在这个例子中,我们将设置一个名为自定义数据的节点。 这个节点和参数类似,但允许你为特效中的每个粒子设置不同的值,也允许你设置F曲线和其他参数。

这次,我们将通过移动渐变贴图来熄灭火焰。

通过外部参数偏移渐变的参考位置,从而实现淡出效果。

渐变图像向透明方向移动即可使其变得透明。

首先,我们将添加一个自定义数据1节点。 因为是UV,将它连接到RG。

../../_images/CustomData_En.png

然后,在Effekseer的基础渲染设置面板设置自定义数据。 在这个例子中,我们将使用F曲线,因为我们将移动UV以实现淡入和淡出。

../../_images/CustomData_Editor_En.png

设置F曲线中的R值,-1表示消失,0表示显示。

当输入-1时,将参考渐变图像的上方部分。 这意味着图像会消失。

../../_images/FCurve.png

然后特效现在会淡入和淡出。

最后,你可以通过下面的链接下载本章中制作的特效。

下载

总结

这次我们制作了火焰的一个变种。 为每个特效制作一个材质很费事,所以制作一个可以用于很多地方的通用的材质是非常重要的。