Particle System Overview
粒子系统是游戏引擎特效表现的基础,它可以用于模拟的火、烟、水、云、雪、落叶等自然现象,也可用于模拟发光轨迹、速度线等抽象视觉效果。
基本结构
粒子系统的基本单元是粒子,一个粒子一般具有位置、大小、颜色、速度、加速度、生命周期等属性。在每一帧中,粒子系统一般会执行如下步骤:
- 产生新的粒子,并初始化
- 删除超过生命周期的粒子
- 更新粒子的动态属性
- 渲染所有有效的粒子
一般粒子系统会有如下几个部分组成:
- 发射器,用于创建粒子,并初始化粒子的属性
- 影响器,用于更新粒子的属性
- 渲染器,渲染粒子
- 粒子类,存储粒子的属性
- 粒子系统类,管理上面的模块
Cocos Creator 3D粒子系统以模块来组织功能,包含了以下模块:
模块 | 描述 |
---|---|
ParticleSystemComponent | 用于存储在Inspector中显示的所有数据,管理粒子生成、更新、销毁相关模块,控制粒子播放 |
ShapeModule | 用于控制粒子发射,包括发射方向与速度,支持预定义的发射方向包括方块、圆、锥体、球、半球 |
AnimatorModule | 用于控制粒子发射后状态更新。已支持的功能有:大小、颜色、旋转、速度、加速度、限速、贴图动画 |
ParticleSystemRenderer | 用于生成粒子渲染所需要的数据。包括vb、ib、渲染状态相关的控制 |
添加一个粒子系统模块有两种方式:
- 像其他组件一样为节点添加粒子系统组件(不推荐)
- 使用编辑器添加粒子系统组件(推荐)
- 开发者可以通过右侧 Inspector 面板上点击“添加组件”添加粒子,如下图:
- 也可以通过左侧的层级管理器“右键->创建->特效->粒子系统”来添加一个粒子系统组件,如下图:
前往 粒子系统模块 说明文档。