Class ParticleSystemBaseBehaviourAbstract

Base class for custom particle behaviors. Extend this to create custom particle logic.

Override initialize() to set up per-particle state when particles spawn.
Override update() to modify particles each frame (position, velocity, color, size, etc.).
Override frameUpdate() for logic that runs once per frame (not per particle).

class WindBehaviour extends ParticleSystemBaseBehaviour {
windStrength = 2;
windDirection = new Vector3(1, 0, 0);

update(particle: Particle, delta: number) {
particle.velocity.addScaledVector(this.windDirection, this.windStrength * delta);
}
}

ParticleSystem.addBehaviour to register your custom behavior

Implements

  • Behavior

Constructors

Properties

Accessors

Methods

Constructors

Properties

Reference to the particle system this behavior belongs to

type: string

Behavior type identifier used by three.quarks

Accessors

  • get context(): Context

    Access to the engine context for timing, input, etc.

    Returns Context

Methods

  • Returns Behavior

  • Called once per frame before particle updates. Use for shared calculations.

    Parameters

    • _delta: number

    Returns void

  • Called once when a particle is spawned. Use to initialize per-particle state.

    Parameters

    • _particle: Particle

    Returns void

  • Called when the particle system is reset.

    Returns void

  • Returns void

  • Called every frame for each active particle. Use to update particle properties.

    Parameters

    • _particle: Particle
    • _delta: number

    Returns void