xr-frame / Exports / Particle

# Class: Particle

# Hierarchy

  • BasicParticle

    ↳ Particle

# Table of contents

# Constructors

# Events

# Properties

# Accessors

# Methods

# Constructors

# constructor

• new Particle()

# Inherited from

BasicParticle.constructor

# Events

# onAdd

• onAdd:


# onRelease

• onRelease:


# onRemove

• onRemove:


# onTick

• onTick:


# onUpdate

• onUpdate:

# Properties

# priority

• Readonly priority: number = 300

# Overrides

BasicParticle.priority


# schema

• Readonly schema: IComponentSchema

详见ParticleSchema。

# Inherited from

BasicParticle.schema


# subEmitters

• subEmitters: any = null


# EVENTS

▪ Static EVENTS: string[]

# Overrides

BasicParticle.EVENTS

# Accessors

# billboardMode

• get billboardMode(): number

# Returns

number

• set billboardMode(value): void

# Parameters

Name Type
value number

# Returns

void


# data

• get data(): IParticleData

# Returns

IParticleData

• set data(value): void

# Parameters

Name Type
value IParticleData

# Returns

void


# el

• get el(): Element

挂载的元素。

# Returns

Element


# emitterPosition

• get emitterPosition(): Vector3

# Returns

Vector3

• set emitterPosition(value): void

# Parameters

Name Type
value Vector3

# Returns

void


# id

• get id(): number

# Returns

number


# material

• get material(): Material

# Returns

Material

• set material(value): void

# Parameters

Name Type
value Material

# Returns

void


# particleEmitter

• get particleEmitter(): BasicShapeEmitter

# Returns

BasicShapeEmitter


# scene

• get scene(): Scene

当前场景。

# Returns

Scene


# spriteChangeSpeed

• get spriteChangeSpeed(): number

# Returns

number


# useBillboard

• get useBillboard(): boolean

# Returns

boolean

• set useBillboard(value): void

# Parameters

Name Type
value boolean

# Returns

void


# useRampGradients

• get useRampGradients(): boolean

# Returns

boolean

• set useRampGradients(value): void

# Parameters

Name Type
value boolean

# Returns

void


# useRandomSpriteCellIndex

• get useRandomSpriteCellIndex(): boolean

# Returns

boolean


# useSpriteCellLoop

• get useSpriteCellLoop(): boolean

# Returns

boolean


# useSpriteSheet

• get useSpriteSheet(): boolean

# Returns

boolean

• set useSpriteSheet(value): void

# Parameters

Name Type
value boolean

# Returns

void


# version

• get version(): number

当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。

# Returns

number

# Methods

# addAlphaGradient

▸ addAlphaGradient(gradient, alpha, alpha2?): void

添加粒子运动过程中的透明度变化规则。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
alpha number 指定粒子颜色透明度的左区间[0-1]
alpha2? number 指定粒子颜色透明度的右区间[0-1]

# Returns

void

# Inherited from

BasicParticle.addAlphaGradient


# addColorGradient

▸ addColorGradient(gradient, color1, color2?): void

添加粒子运动过程中的颜色变化规则。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
color1 Vector4 指定粒子颜色的左区间
color2? Vector4 指定粒子颜色的右区间

# Returns

void

# Inherited from

BasicParticle.addColorGradient


# addColorRemapGradient

▸ addColorRemapGradient(gradient, min, max?): void

添加粒子运动过程中的透明度变化范围。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
min number 指定粒子透明度值的左区间
max? number 指定粒子透明度值的右区间

# Returns

void

# Inherited from

BasicParticle.addColorRemapGradient


# addDragGradient

▸ addDragGradient(gradient, drag, drag2?): void

添加粒子运动过程中的阻力规则。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
drag number -
drag2? number -

# Returns

void

# Inherited from

BasicParticle.addDragGradient


# addLimitSpeedGradient

▸ addLimitSpeedGradient(gradient, limitSpeed, limitSpeed2?): void

添加粒子运动过程中的速度限制规则。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
limitSpeed number 指定粒子限制速度的左区间
limitSpeed2? number 指定粒子限制速度的右区间

# Returns

void

# Inherited from

BasicParticle.addLimitSpeedGradient


# addRampGradient

▸ addRampGradient(gradient, color): void

添加粒子运动过程中的根据透明度影响的颜色变化规则,将通过颜色变化图纹理进行采样。

# Parameters

Name Type Description
gradient any 指定粒子颜色变化图的具体位置,对应具体值应为(1-alpha)
color any 指定该位置的颜色

# Returns

void

# Inherited from

BasicParticle.addRampGradient


# addSizeGradient

▸ addSizeGradient(gradient, size, size2?): void

添加粒子运动过程中的尺寸变化规则。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
size number 指定粒子尺寸的左区间
size2? number 指定粒子尺寸的右区间

# Returns

void

# Inherited from

BasicParticle.addSizeGradient


# addSpeedScaleGradient

▸ addSpeedScaleGradient(gradient, speed, speed2?): void

添加粒子运动过程中的速度变化规则。

# Parameters

Name Type Description
gradient number 指定所处粒子生命周期的阶段
speed number 指定粒子速度的左区间
speed2? number 指定粒子速度的右区间

# Returns

void

# Inherited from

BasicParticle.addSpeedScaleGradient


# clone

▸ clone(): Particle

获取一个拷贝的粒子系统。

# Returns

Particle

# Inherited from

BasicParticle.clone


# createBoxEmitter

▸ createBoxEmitter(direction1, direction2, minEmitBox, maxEmitBox): default

创建一个箱形发射器。

# Parameters

Name Type Description
direction1 Vector3 粒子运动方向左区间
direction2 Vector3 粒子运动方向右区间
minEmitBox Vector3 粒子生成位置最小允许坐标
maxEmitBox Vector3 粒子生成位置最大允许坐标

# Returns

default

箱形发射器

# Inherited from

BasicParticle.createBoxEmitter


# createPointEmitter

▸ createPointEmitter(direction1, direction2): default

创建一个点发射器。

# Parameters

Name Type Description
direction1 Vector3 粒子运动方向左区间
direction2 Vector3 粒子运动方向右区间

# Returns

default

点发射器

# Inherited from

BasicParticle.createPointEmitter


# createSphereEmitter

▸ createSphereEmitter(radius, radiusRange, arc, randomizeDirection): default

创建一个球形发射器。

# Parameters

Name Type Description
radius number 球形半径
radiusRange number 球形区域内的覆盖范围[0-1]
arc number 粒子在球形内生成的角度区间[0-360]
randomizeDirection number 粒子运动方向偏离程度[0-1]

# Returns

default

球形发射器

# Inherited from

BasicParticle.createSphereEmitter


# createSubEmitter

▸ createSubEmitter(data): SubEmitter

获取一个粒子子发射器。

# Parameters

Name Type
data IParticleData

# Returns

SubEmitter

# Inherited from

BasicParticle.createSubEmitter


# getData

▸ getData<T>(key): IParticleData[T]

获取一个当前值。

# Type parameters

Name Type
T extends keyof IParticleData

# Parameters

Name Type
key T

# Returns

IParticleData[T]

# Inherited from

BasicParticle.getData


# initParticle

▸ initParticle(data): void

初始化粒子系统的状态。

# Parameters

Name Type
data IParticleData

# Returns

void


# resetParticle

▸ resetParticle(): void

重置粒子系统的状态。

# Returns

void


# setData

▸ setData(data): void

不通过xml而是直接设置data,注意值的类型需要和schema中一致。

# Parameters

Name Type
data Partial<IParticleData>

# Returns

void

# Inherited from

BasicParticle.setData


# setDataOne

▸ setDataOne<T>(key, value): void

设置一个数据。

# Type parameters

Name Type
T extends keyof IParticleData

# Parameters

Name Type
key T
value IParticleData[T]

# Returns

void

# Inherited from

BasicParticle.setDataOne


# start

▸ start(delay?): void

粒子系统开始播放。

# Parameters

Name Type Default value Description
delay number 0 设定粒子延时几秒后再播放。

# Returns

void


# stop

▸ stop(): void

停止粒子系统与其子发射器的播放。

# Returns

void