ParticleProcessMaterial 2D Usage

处理材质属性

ParticleProcessMaterial 设置

最小、最大和曲线属性

在这个材质中的属性控制粒子在其生命周期中的行为和变化。它们中的许多拥 MinMaxCurve 值,允许你对其行为进行微调。这些值之间的关系是:当一个粒子被生成时,属性会被设置为 MinMax 之间的一个随机值。如果 MinMax 是相同的,那么每个粒子的值将始终是相同的。如果也设置了 Curve ,属性的值将会乘以粒子生命周期当前点上曲线的值。使用曲线来改变粒子生命周期中的属性。这种方式可以表达非常复杂的行为。

备注

This page covers how to use ParticleProcessMaterial for 2D scenes specifically. For information on how to use it in a 3D scene see 处理材质属性.

Lifetime Randomness

Lifetime Randomness 属性控制应用于每个粒子生命周期的随机性程度。值为 0 表示完全没有随机性,由 Lifetime 属性设置的所有粒子的存活时间相同。值为 1 表示粒子的生命周期在 [0.0, Lifetime] 范围内完全随机。

Particle Flags

生成

角度(Angle)

确定粒子的初始角度(以度为单位)。 该参数通常在随机化后会有用。

../../_images/paranim11.gif

Velocity

方向

这是粒子发射的基础方向。 默认值是 Vector3(1,0,0) ,它使粒子向右发射。 然而,在默认的重力设置下,粒子会直线下降。

../../_images/direction1.png

为了让这个属性作用更明显,你需要一个大于 0 的初始速度(initial velocity)。 这里,我们把初始速度设为 40。 你会注意到粒子向右发射,然后受重力作用下降。

../../_images/direction2.png

发散(Spread)

此参数是以度为单位的角度,它会被随机加减到基础 Direction 上。180 的铺开角度将向所有方向发射(+/- 180)。

../../_images/paranim3.gif

扁平度(Flatness)

这个属性只对3D粒子有用。

初速度(Initial Velocity)

初始速度是粒子发射的速度(单位为像素/秒)。以后可以通过重力或其他加速度来修改速度(后述)。

../../_images/paranim4.gif

Animated Velocity

角速度(Angular Velocity)

Angular velocity is the speed at which particles rotate around their center (in degrees/sec).

../../_images/paranim5.gif

环绕速度(Orbit Velocity)

环绕速度速度用于使粒子绕它们的中心转动。

../../_images/paranim6.gif

加速度

重力(Gravity)

应用于每个粒子上的重力。

../../_images/paranim7.gif

线性加速度(Linear Acceleration)

应用于每个粒子的线性加速度。

径向加速度(Radial Acceleration)

如果此加速度为正,则粒子会向远离发射中心加速。 如果是负的,他们会被加速吸进去。

../../_images/paranim8.gif

切向加速度(Tangential Acceleration)

该加速度会使用从粒子到中心点的切向量,结合径向加速度可以做出很酷炫的效果。

../../_images/paranim9.gif

阻尼(Damping)

阻尼选项会对颗粒施加摩擦力,迫使它们停止。 它特别适用于火花或爆炸,火花或爆炸通常以高线速度开始,然后在他们隐去时停下来。

../../_images/paranim10.gif

显示

缩放(Scale)

确定粒子的初始大小。

../../_images/paranim12.gif

Color Curves

Color

用于改变发射出来的粒子颜色。

Hue Variation(色相变化)

Variation 值设置的是应用于每个粒子的初始色调变化。Variation Rand 值控制色调变化的随机性比率。

动画

备注

仅当 GPUParticles2D 或 CPUParticles2D 节点上使用的 CanvasItemMaterial 已进行 相应配置 时,粒子翻页动画才有效。

如要将粒子翻页设置为线性播放,请将 Speed MinSpeed Max 值设置为 1:

设置粒子动画以便在粒子生命周期内播放

设置粒子动画以便在粒子生命周期内播放

默认情况下,循环功能是禁用的。如果粒子在其生命周期结束之前播放完毕,则粒子将继续使用翻页的最后一帧(根据翻页纹理的设计方式,这一帧可能是完全透明的)。如果启用循环,粒子的动画将循环回到第一帧并重复播放。

根据精灵表包含的图像数量以及粒子的存活时间情况,你的动画可能看起来会并不流畅。粒子的存活时间、动画速度和精灵表中图像数量之间的关系是这样的:

备注

当动画速度为 1.0 时,动画将在粒子生命周期结束时,播放到序列中的最后一个图像。

\[Animation\ FPS = \frac{Number\ of\ images}{Lifetime}\]

如果你希望将粒子翻页用作每个粒子的随机粒子纹理源,请将速度值保持为 0 ,并将 Offset Max 设置为 1:

设置粒子动画以实现发射时的随机偏移

设置粒子动画以实现发射时的随机偏移

请注意,GPUParticles2D 节点的 Fixed FPS 也会影响动画播放。为了动画播放流畅,建议将其设置为 0,以便在每个渲染帧上模拟粒子。如果这个设置不适合你的用例,请将 Fixed FPS 设置为等于翻页动画使用的有效帧速率(请参阅上面的公式)。

发射形状

ParticleProcessMaterials 允许你设置发射蒙版,它决定发射粒子的区域和方向。 这些可以从项目中的纹理生成。

在设置了 ParticleProcessMaterial,并且选择了 GPUParticles2D 节点。 工具栏中就会出现“粒子”菜单:

../../_images/emission_shapes1.webp

打开它并选择“加载发射遮罩”:

../../_images/emission_shapes2.webp

然后选择你想要用作遮挡的纹理:

../../_images/emission_shapes3.webp

会出现一个具有多个设置的对话框。

发射遮罩

纹理可以生成三种类型的发射遮挡:

  • 实体像素(Solid Pixels):粒子将从纹理的任意区域产生,透明区域除外。

../../_images/emission_mask_solid.gif
  • 边界像素(Border Pixels):粒子将从纹理的外边缘产生。

../../_images/emission_mask_border.gif
  • 有向边界像素(Directed Border Pixels):与边界像素类似,但为遮罩添加了额外信息,使粒子能够从边界发射出去。请注意,需要设置初速度(Initial Velocity)才能使用该功能。

../../_images/emission_mask_directed_border.gif

发射色彩

Capture from Pixel 会使粒子在其产生点处继承遮挡材质的颜色。

Once you click "OK", the mask will be generated and set to the ParticleProcessMaterial, under Spawn and then Position

../../_images/emission_shapes4.webp

本节中的所有值均由“加载发射遮罩”菜单自动生成,因此通常应将它们保留。

备注

不应将图像直接添加到点纹理(Point Texture)颜色纹理(Color Texture)中。应始终使用“加载发射遮罩”菜单。