GravityParticleSystem 是继承自 ParticleSystem 扩展的重力粒子系统,在该系统中通过设置重力、速度、径向加速度以及切向加速度实现粒子不同的运动轨迹。
该系统中大部分的参数都是由2个数值决定的:基础值和差值。粒子在被创建时的属性值是由基础值加上随机的差值浮动决定的,差值的浮动在正负差值之间。例如:粒子存活时间的基础值是1000,差值是500,那么创建粒子的时候粒子的存活时间是 基础值 + 差值 * (Math.random() * 2 - 1),也就是500到1500之间随机。
属性
** private emitterXVariance:number; **
@brief 粒子初始坐标 x 差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private emitterYVariance:number; **
@brief 粒子初始坐标 y 差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private lifespan:number; **
@brief 粒子存活时间,单位毫秒,取值范围(0,Number.MAX_VALUE]
** private lifespanVariance:number; **
@brief 粒子存活时间差值,单位毫秒,取值范围(0,Number.MAX_VALUE]且不大于 lifespan
** private emitAngle:number; **
@brief 粒子出现时的角度,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private emitAngleVariance:number; **
@brief 粒子出现时的角度差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private speed:number; **
@brief 粒子出现时速度,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private speedVariance:number; **
@brief 粒子出现时速度差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private gravityX:number; **
@brief 粒子水平重力,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private gravityY:number; **
@brief 粒子垂直重力,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private radialAcceleration:number; **
@brief 粒子径向加速度,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private radialAccelerationVariance:number; **
@brief 粒子径向加速度差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private tangentialAcceleration:number; **
@brief 粒子切向加速度,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private tangentialAccelerationVariance:number; **
@brief 粒子切向加速度差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private startSize:number; **
@brief 粒子出现时大小,取值范围(0,Number.MAX_VALUE],粒子将会在存活时间内由 startSize 慢慢变为 endSize
** private startSizeVariance:number; **
@brief 粒子出现时大小差值,取值范围(0,Number.MAX_VALUE]
** private endSize:number; **
@brief 粒子消失时大小,取值范围(0,Number.MAX_VALUE],粒子将会在存活时间内由 startSize慢慢变为 endSize
** private endSizeVariance:number; **
@brief 粒子消失时大小差值,取值范围(0,Number.MAX_VALUE],且不大于endSize
** private startRotation:number; **
@brief 粒子出现时旋转值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE],粒子将会在存活时间内由 startRotation 慢慢变为 endRotation
** private startRotationVariance:number; **
@brief 粒子出现时旋转值差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private endRotation:number; **
@brief 粒子消失时旋转值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE],粒子将会在存活时间内由 startRotation 慢慢变为 endRotation
** private endRotationVariance:number; **
@brief 粒子消失时旋转值差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private startAlpha:number; **
@brief 粒子出现时的 Alpha 透明度值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE],粒子将会在存活时间内由 startAlpha 慢慢变为 endAlpha
** private startAlphaVariance:number; **
@brief 粒子出现时的 Alpha 透明度差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** private endAlpha:number; **
@brief 粒子消失时的 Alpha 透明度值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE],粒子将会在存活时间内由 startAlpha 慢慢变为 endAlpha
** private endAlphaVariance:number; **
@brief 粒子消失时的 Alpha 透明度差值,取值范围[-Number.MAX_VALUE,Number.MAX_VALUE]
** constructor(texture:egret.Texture, config:any) **
@brief 构造函数 @param texture {egret.Texture} 粒子纹理 @param config {any} 粒子属性配置,包含重力系统所需要的各项属性值