This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
粒子特效用于视觉上增强游戏。您可以使用它们来创建爆炸、血溅、拖尾、天气或任何其他效果。
粒子特效由多个发射器和可选的修改器组成:
在 Assets 浏览器的上下文菜单中选择 New... ▸ Particle FX。为新的粒子特效文件命名。编辑器现在将使用场景编辑器打开该文件。
Outline 面板显示默认的发射器。选择发射器以在下面的 Properties 面板中显示其属性。
要向特效添加新的发射器,右键单击 Outline 的根目录,然后从上下文菜单中选择 Add Emitter ▸ [type]。请注意,您可以在发射器属性中更改发射器的类型。
要添加新的修改器,右键单击 Outline 中修改器的位置(特效根目录或特定发射器),然后选择 Add Modifier,再选择修改器类型。
位于特效根目录(不是发射器的子级)的修改器会影响特效中的所有粒子。
作为发射器的子级添加的修改器只会影响该发射器。
编辑发射器或修改器时,结果会立即在编辑器中可见,即使特效已暂停:
Once
在达到其持续时间后停止发射器。Loop
在达到其持续时间后重新启动发射器。Auto
保持每个翻页动画帧的大小与源图像相同。Manual
根据 size 属性设置粒子大小。World
使粒子独立于发射器移动。Emitter
使粒子相对于发射器移动。Alpha
、Add
和 Multiply
。Circle
从圆内的随机位置发射粒子。粒子从中心向外发射。圆的直径由 Emitter Size X 定义。
2D Cone
从扁平锥体(三角形)内的随机位置发射粒子。粒子从锥体顶部向外发射。Emitter Size X 定义顶部的宽度,Y 定义高度。
Box
从盒子内的随机位置发射粒子。粒子沿着盒子的本地 Y 轴向上发射。Emitter Size X、Y 和 Z 分别定义宽度、高度和深度。对于 2D 矩形,将 Z 大小保持为零。
Sphere
从球体内的随机位置发射粒子。粒子从中心向外发射。球的直径由 Emitter Size X 定义。
Cone
从 3D 锥体内的随机位置发射粒子。粒子从锥体的顶部圆盘向外发射。Emitter Size X 定义顶部圆盘的直径,Y 定义锥体的高度。
Default
将朝向设置为单位朝向Initial Direction
保持发射粒子的初始朝向。Movement Direction
根据粒子的速度调整其朝向。World
时可用。发射器的速度每帧都会估算。Blend Mode 属性定义了组件图形应如何与其后面的图形进行混合。以下是可用的混合模式及其计算方式:
src.a * src.rgb + (1 - src.a) * dst.rgb
src.rgb + dst.rgb
src.rgb * dst.rgb
src.rgb - dst.rgb * dst.rgb
这些属性有两个字段:一个值和一个抖动。抖动是应用于每个生成粒子的随机变化。例如,如果值是 50,抖动是 3,每个生成的粒子将获得 47 到 53 之间的值(50 +/- 3)。
通过勾选关键帧按钮,属性的值由发射器持续时间内的曲线控制。要重置已设置关键帧的属性,取消勾选关键帧按钮。
Curve Editor(在底部视图的选项卡中可用)用于修改曲线。已设置关键帧的属性无法在 Properties 视图中编辑,只能在 Curve Editor 中编辑。单击并拖动点和切线来修改曲线的形状。双击曲线以添加控制点。要删除控制点,双击它。
要自动缩放曲线编辑器以显示所有曲线,请按 F。
以下属性可以在发射器的播放时间内设置关键帧:
Automatic
并使用翻页动画作为图像源,则此属性将被忽略。以下属性可以在粒子的生命周期内设置关键帧:
有四种类型的修改器可用,它们影响粒子的速度:
Acceleration
Drag
Radial
Vortex
要从脚本启动和停止粒子特效:
-- 启动当前游戏对象中的特效组件 "particles"
particlefx.play("#particles")
-- 停止当前游戏对象中的特效组件 "particles"
particlefx.stop("#particles")
要从 GUI 脚本启动和停止粒子特效,请参阅 GUI 粒子特效手册 以获取更多信息。
即使粒子特效组件所属的游戏对象被删除,粒子特效仍将继续发射粒子。
有关更多信息,请参阅 粒子特效参考文档。
默认的粒子特效材质具有以下常量,可以使用 particlefx.set_constant()
进行更改,使用 particlefx.reset_constant()
进行重置(有关更多详细信息,请参阅材质手册):
tint
vector4
)。vector4 用于表示染色,其中 x、y、z 和 w 分别对应红色、绿色、蓝色和 alpha 染色。有关示例,请参阅 API 参考。game.project 文件中有一些与粒子相关的项目设置。
Did you spot an error or do you have a suggestion? Please let us know on GitHub!
GITHUB