Home Reference Source

References

behaviour

summary
public

C Alpha

Behaviour that applies an alpha transition effect to particles.

public

Behaviour that causes particles to be attracted to a target position.

public

The base behaviour class.

public

Behaviour that causes particles to move away from other particles they collide with.

public

C Color

A behaviour which mutates the color of a particle over time.

public

Behaviour that allows for specific functions to be called on particles when they interact with a zone.

public

C Force

Behaviour that forces particles along a specific axis.

public

Behaviour that forces particles down the y axis.

public

Behaviour that causes particles to drift to random coordinates in 3D space.

public

Behaviour that causes particles to be repelled from a target position.

public

C Rotate

Behaviour that rotates particles.

public

C Scale

Behaviour that scales particles.

public

C Spring

Behaviour that causes particles to spring.

public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public

constants

summary
private
public
public

V DR: *

public
public

1:100

public

V PI: number

public

The max particle number in pool.

public

V RK2: string

public

V RK4: string

public
public

core

summary
public

A Particle is an object that is emitted by an emitter.

public

C Pool

An object pool implementation.

public

C System

The core of the three-system particle engine.

public

F fromJSON(json: object, THREE: object, System: function, Emitter: function): System

this function was deprecated. Use fromJSONAsync instead.

Creates a System instance from a JSON object.

public

F fromJSONAsync(json: object, THREE: object, System: function, Emitter: function, options: object): Promise<System>

Creates a System instance from a JSON object.

public

Default particle age

public

Default particle alpha

public

Default particle body

public

Default particle dead

public

Default particle easing

public

Default particle energy

public

Default particle index

public

Default particle life

public

Default particle mass

public

Default particle parent

public

Default particle radius

public

Default particle scale

public

Default particle sleep

public

The default delta provided to the System instance

public

Default particle useAlpha

public

Default particle useColor

public

The types of behaviours supported by the System.fromJSON method.

public

The types of initializers supported by the System.fromJSON method.

public

The types of renderers supported by the System.fromJSON method.

public

The types of zones supported by the System.fromJSON method.

public
public
public

core/three

summary
public

F Euler(x: *, y: *, z: *, order: *)

public

F Matrix4()

public

F Quaternion(x: *, y: *, z: *, w: *)

public

F Vector3(x: *, y: *, z: *)

private

V _Math: {"DEG2RAD": *, "RAD2DEG": *, "generateUUID": *, "clamp": *, "euclideanModulo": *, "mapLinear": *, "lerp": *, "smoothstep": *, "smootherstep": *, "randInt": *, "randFloat": *, "randFloatSpread": *, "degToRad": *, "radToDeg": *, "isPowerOfTwo": *, "ceilPowerOfTwo": *, "floorPowerOfTwo": *}

public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public

V MOUSE: {"LEFT": *, "MIDDLE": number, "RIGHT": number}

public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public

V RGBEFormat: *

public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public
public

debug

summary
public

F log(): *

You can use this emit particles.

public
public
public
public
public
public

ease

summary
public

F getEasingByName(name: *)

public

F setEasingByName(easeName: *): *

public

V ease: {"easeLinear": *, "easeInQuad": *, "easeOutQuad": *, "easeInOutQuad": *, "easeInCubic": *, "easeOutCubic": *, "easeInOutCubic": *, "easeInQuart": *, "easeOutQuart": *, "easeInOutQuart": *, "easeInSine": *, "easeOutSine": *, "easeInOutSine": *, "easeInExpo": *, "easeOutExpo": *, "easeInOutExpo": *, "easeInCirc": *, "easeOutCirc": *, "easeInOutCirc": *, "easeInBack": *, "easeOutBack": *, "easeInOutBack": *}

The Ease class provides a collection of easing functions for use with System

public

V easeLinear: *

emitter

summary
public

Emitters are the System engine's particle factories. They cause particles to be rendered by emitting them, and store all particle initializers and behaviours.

public
public
public
public
public
public
public
public

events

summary
public
public
public
public
public
public
public
public
public

initializer

summary
public

C Body

Sets the body property on initialized particles.

public

Sets the body property to be a THREE.Sprite on initialized particles.

public abstract

The base Emitter / Particle property class.

public

C Life

Sets the life property on initialized particles.

public

C Mass

Sets the mass property on initialized particles.

public

Sets the starting position property for initialized particles.

public

C Radius

Sets the radius property on initialized particles.

public

C Rate

Calculates the rate of particle emission.

public

Sets the rotation property on initialized particles.

public

Sets the body property to be a THREE.Sprite with a texture map on initialized particles.

public

V DEFAULT_JSON_MATERIAL_PROPERTIES: {...DEFAULT_MATERIAL_PROPERTIES: Object, "blending": string}

public

V DEFAULT_MATERIAL_PROPERTIES: {"color": number, "blending": *, "fog": boolean}

public
public
public

V SUPPORTED_MATERIAL_BLENDING_MODES: {"AdditiveBlending": *, "CustomBlending": *, "MultiplyBlending": *, "NoBlending": *, "NormalBlending": *, "SubtractiveBlending": *}

public
public
public
public
public
public
public
public
public
public
public
public
public
public
public

initializer/Velocity

summary
public

Sets the velocity property on initialized particles.

public

Sets the velocity property on initialized particles.

public

Sets the velocity property on initialized particles.

public

Abstract class for Velocity initializers.

math

summary
public

Class for storing items of mixed type and fetching a randomised value from these items.

public

C Box

public

Class for storing and interacting with an array of colours.

public
public

C Span

public
public

F createArraySpan(items: mixed): ArraySpan

Attempts to create an ArraySpan from the items provided.

public

F createColorSpan(colors: mixed): ColorSpan

Attempts to create an ArraySpan from the colors provided.

public

F createSpan(a: *, b: *, c: *): *

public

F integrate(particle: Particle, time: number, damping: number, type: string): *

Performs the chosen integration on the particle.

public
public
public
public
public
public
public
public
public
public

renderer

summary
public
public
public
public
public
public
public
public
public
public
public

renderer/GPURenderer

summary
public

Performant particle renderer that uses THREE.Points to propagate particle (postiion, rgba etc.,) properties to vertices in a ParticleBufferGeometry.

renderer/GPURenderer/Desktop

summary
public

GPURenderer for devices that support floating point textures.

renderer/GPURenderer/Desktop/shaders

summary
public
public

renderer/GPURenderer/Mobile

summary
public

GPURenderer for mobile devices that do not support floating point textures.

renderer/GPURenderer/Mobile/shaders

summary
public
public

renderer/GPURenderer/common

summary
public

V DEFAULT_RENDERER_OPTIONS: {"blending": string, "baseColor": number, "depthTest": boolean, "depthWrite": *, "transparent": boolean, "maxParticles": *, "shouldDebugTextureAtlas": *, "shouldForceDesktopRenderer": *, "shouldForceMobileRenderer": *}

renderer/GPURenderer/common/ParticleBuffer

summary
public

Creates and provides performant buffers for mapping particle properties to geometry vertices.

public
public
public

V ATTRIBUTE_TO_SIZE_MAP: {"position": *, "rotation": *, "size": *, "color": *, "alpha": *, "texID": *}

public
public
public
public
public
public
public
public
public

V RGBA_SIZE: *

public
public
public
public
public
public

renderer/GPURenderer/common/TextureAtlas

summary
public

Dynamic texture atlas for performant support of systems with multiple emitters and textures.

public

renderer/GPURenderer/common/shaders

summary
public

renderer/GPURenderer/common/stores

summary
public

C Target

Simple class that stores the particle's "target" or "next" state.

public

Map of particle IDs to integer ids

utils

summary
public

F withDefaults(defaults: *, properties: *)

zone

summary
public
public
public

Uses a three THREE.Geometry to determine the zone parameters.

public
public
public

A spherical zone for particles to be emitted within.

public abstract

C Zone

A Zone determines the area in 3D space where an emitter's particles can position themselves. They are supplied to both the Position initializer and the CrossZone behaviour.

public
public
public
public
public
public
public