egret-docs-master/extension/particle/ParticleSystem/README.md

70 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

2024-06-19 13:32:32 +08:00
## 概述
ParticleSystem 是粒子库的基类,其他粒子库可以继承自 ParticleSystem 实现自己的功能。ParticleSystem 提供了粒子库必须的一些属性和方法,在创建粒子对象时使用了对象池以减少对象创建带来的开销。
## 属性
ParticleSystem 提供了粒子系统所必须的一些属性,如:粒子出现间隔、粒子纹理等等。
** public emissionTime:number = -1; **
```
@brief 粒子出现总时间,单位毫秒,取值范围(0,Number.MAX_VALUE]-1表示无限时间
```
** public emissionRate:number; **
```
@brief 粒子出现间隔,单位毫秒,取值范围(0,Number.MAX_VALUE]
```
** public texture:egret.Texture; **
```
@brief 粒子所使用的纹理
```
** public emitterX:number = 0; **
```
@brief 粒子出现点X坐标取值范围[-Number.MAX_VALUE,Number.MAX_VALUE] **
```
** public emitterY:number = 0; **
```
@brief 粒子出现点Y坐标取值范围[-Number.MAX_VALUE,Number.MAX_VALUE] **
```
** public maxParticles:number = 200; **
```
@brief 粒子系统最大粒子数,超过该数量将不会继续创建粒子,取值范围[1,Number.MAX_VALUE]
```
## 方法
ParticleSystem 提供了粒子系统所必须的一些方法,如:开始、停止、更换纹理。
** constructor(texture:egret.Texture, emissionRate:number) **
```
@brief 构造函数 @param texture {egret.Texture} 粒子纹理 @param emissionRate {number} 粒子出现间隔
```
** public start(duration:number = -1):void **
```
@brief 开始创建粒子 @param duration {number} 粒子出现总时间
```
** public stop(clear:boolean = false):void **
```
@brief 停止创建粒子 @param clear {boolean} 是否清除掉现有粒子
```
** public changeTexture(texture:egret.Texture):void **
```
@brief 更换粒子纹理 @param texture {egret.Texture} 新的纹理
```