跳到主要内容

粒子系统

Particle System 组件定义三维空间中的粒子发射器。

粒子系统组件

属性​

基本设置​

属性说明
自动播放(Auto Play)创建时立即播放;未勾选时,需要在脚本中调用组件的 play 函数。
粒子数量(Particle Count)系统管理的最大粒子数量。
生命周期(Lifetime)粒子从出生到消亡的秒数。
发射间隔(Emission Rate)粒子生成间隔时间范围的下限。下次发射间隔会在 Emission Rate 与 Emission Rate 2 之间随机选择。
发射间隔上限(Emission Rate 2)粒子生成间隔时间范围的上限。下次发射间隔会在 Emission Rate 与 Emission Rate 2 之间随机选择。
初始角度(Start Angle)粒子初始旋转角度的下限,单位为度。每个粒子在 Start Angle 与 Start Angle 2 之间随机取值。
初始角度上限(Start Angle 2)粒子初始旋转角度的上限,单位为度。每个粒子在 Start Angle 与 Start Angle 2 之间随机取值。
循环(Loop)持续发射;未勾选时,发射 Particle Count 指定数量的粒子后停止。
预热(Pre Warm)初始化时视为已经完成一个完整周期。仅循环粒子系统可用。

光照​

属性说明
光照(Lighting)粒子接收场景中的平行光和环境光。有时可为系统设置法线贴图,以获得更真实的光照。
半兰伯特(Half Lambert)防止光线照向粒子背面时外观过于平坦。这是非物理光照模型,但可能带来更好的视觉效果。仅在启用 Lighting 时可用。
强度(Intensity)缩放粒子颜色,以实现任意亮度。

渲染​

属性说明
深度写入(Depth Write)勾选后,粒子向深度缓冲区写入深度。否则不修改深度缓冲,粒子按渲染顺序相互覆盖。
深度软化(Depth Softening)控制粒子靠近其他表面时的淡出程度,避免明显穿插。0 表示关闭。大于 0 时需将场景渲染到深度目标以进行比较,可能显著增加每帧绘制调用并影响性能。
排序(Sort)控制绘制顺序:None(GPU 模拟,性能最佳)、Camera Distance(由远到近)、Newest First(新粒子优先)或 Oldest First(旧粒子优先)。
混合类型(Blend Type)粒子写入帧缓冲时的合成方式:Alpha、Additive(相加)或 Multiply(相乘)。
拉伸(Stretch)以世界单位控制粒子根据速度拉伸的程度,从粒子中心朝之前的位置拉伸。
对齐运动方向(Align To Motion)将粒子朝向对齐到运动方向。

发射器形状​

属性说明
发射器形状(Emitter Shape)发射体积形状:Box(盒体)或 Sphere(球体)。
发射器半尺寸(Emitter Extents)仅盒体,局部空间中的半尺寸,粒子在体积内随机生成。
内部半尺寸(Inner Extents)仅盒体,内部盒体的半尺寸。粒子在内外边界之间生成。
发射器半径(Emitter Radius)仅球体,粒子随机生成的球形体积半径。
内半径(Inner Radius)仅球体,粒子在内外半径之间生成。

空间与图层​

属性说明
环绕(Wrap)启用环绕边界。
环绕边界(Wrap Bounds)以所属实体位置为中心的世界空间 AABB。粒子越过一侧边界后,会瞬移到另一侧。移动带环绕发射器的实体,可制作下雨等环境效果。
局部空间(Local Space)在局部空间而非世界空间中模拟粒子,使其随发射器实体移动。
屏幕空间(Screen Space)在屏幕空间中渲染,适用于二维界面效果。
图层(Layers)渲染此粒子系统的图层。

朝向​

属性说明
朝向(Orientation)Screen(面向摄像机)、World Normal(面向固定世界方向)或 Emitter Normal(面向发射器法线方向)。
粒子法线(Particle Normal)Orientation 为 World Normal 或 Emitter Normal 时使用的朝向法线。

纹理​

属性说明
颜色贴图(Color Map)应用于全部粒子的颜色纹理。未指定时使用默认光斑纹理。
法线贴图(Normal Map)应用于全部粒子的法线纹理,可使公告板粒子更好地匹配场景光照。

精灵图集动画​

分配 Color Map 或 Normal Map 后会显示以下属性。

属性说明
水平格数(Horizontal Tiles)精灵图集的列数。
垂直格数(Vertical Tiles)精灵图集的行数。
动画数量(Animation Count)图集中不同动画的数量。
动画索引(Animation Index)要播放的动画索引,启用 Randomize Index 时不可编辑。
随机索引(Randomize Index)每个粒子随机选择一个动画索引。
帧数(Frame Count)动画的帧数量。
起始帧(Start Frame)开始播放的帧索引。
动画速度(Animation Speed)动画播放速度。
动画循环(Animation Loop)启用后循环播放。

网格​

属性说明
模型资源(Model Asset)使用模型中的第一个网格代表所有粒子,而非平面公告板。
渲染资源(Render Asset)使用渲染资源的网格代表所有粒子,而非平面公告板。Model Asset 与 Render Asset 只能设置一个。

曲线​

属性说明
局部速度(Local Velocity)定义粒子相对粒子系统局部坐标系的速度随时间的变化。指定两条曲线时,在两者之间随机线性插值。
世界速度(Velocity)定义粒子相对世界坐标系的速度随时间的变化。指定两条曲线时,在两者之间随机线性插值。
径向速度(Radial Speed)定义粒子远离发射器中心的径向速度随时间的变化。指定两条曲线时,在两者之间随机线性插值。
旋转速度(Rotation Speed)定义角速度随时间的变化。指定两条曲线时,在两者之间随机线性插值。
缩放(Scale)定义缩放随时间的变化,默认宽高均为 1 个单位。指定两条曲线时,在两者之间随机线性插值。
颜色(Color)定义粒子颜色随时间的变化。
不透明度(Opacity)定义不透明度随时间的变化。指定两条曲线时,在两者之间随机线性插值。

另请参阅​

脚本接口​

可以通过 Script 组件控制粒子系统组件属性。接口详见 ParticleSystemComponent。