ParticleSystemComponent: {
    alignToMotion: boolean;
    alphaGraph: object;
    alphaGraph2: object;
    animIndex: number;
    animLoop: boolean;
    animNumAnimations: number;
    animNumFrames: number;
    animSpeed: number;
    animStartFrame: number;
    animTilesX: number;
    animTilesY: number;
    autoPlay: boolean;
    blendType: number;
    colorGraph: object;
    colorMapAsset: number;
    depthSoftening: number;
    depthWrite: boolean;
    emitterExtents: number[];
    emitterRadius: number;
    emitterShape: number;
    enabled: boolean;
    halfLambert: boolean;
    intensity: number;
    layers: number[];
    lighting: boolean;
    loop: boolean;
    mesh: number;
    normalMapAsset: number;
    numParticles: number;
    orientation: number;
    particleNormal: number[];
    preWarm: boolean;
    radialSpeedGraph: object;
    rotationSpeedGraph: object;
    scaleGraph: object;
    screenSpace: boolean;
    sort: number;
    startAngle: number;
    velocityGraph: object;
    wrap: boolean;
    wrapBounds: number[];
}

ParticleSystem Component Properties.

Type declaration

  • alignToMotion: boolean

    If true orient particles in their direction of motion.

    false
    
  • alphaGraph: object

    A curve defining how each particle's opacity changes over time. If alphaGraph2 is specified, the opacity will be a random lerp between both curves.

    {"type":1,"keys":[0,1],"betweenCurves":false}
    
  • alphaGraph2: object

    A curve defining how each particle's opacity changes over time. If specified, the opacity will be a random lerp between both curves.

    {"type":1,"keys":[0,1]}
    
  • animIndex: number

    The animation from the sprite sheet to play for each particle in the system.

    0
    
  • animLoop: boolean

    If true then the sprite sheet animation will repeat indefinitely.

    true
    
  • animNumAnimations: number

    Number of animations contained in the sprite sheet.

    1
    
  • animNumFrames: number

    Number of sprite sheet frames in each animation.

    1
    
  • animSpeed: number

    Sprite sheet animation speed. 1 = particle lifetime, 2 = twice during lifetime etc...

    1
    
  • animStartFrame: number

    Sprite sheet frame in animation to begin animating from.

    0
    
  • animTilesX: number

    Number of horizontal tiles in the sprite sheet.

    1
    
  • animTilesY: number

    Number of vertical tiles in the sprite sheet.

    1
    
  • autoPlay: boolean

    If true, the particle system will play immediately on creation. If false, you will need to call the particle system component's play function from script.

    true
    
  • blendType: number

    The blending mode determines how particles are composited when they are written to the frame buffer.

    2
    
  • colorGraph: object

    A curve defining how each particle's color changes over time.

    {"type":4,"keys":[[0,1],[0,1],[0,1]],"betweenCurves":false}
    
  • colorMapAsset: number

    The id of the color map texture asset to apply to all particles in the system. If no texture asset is assigned, a default spot texture is used.

    null
    
  • depthSoftening: number

    This variable value determines how much particles fade out as they get closer to another surface.

    0
    
  • depthWrite: boolean

    If true, the particles will write depth information to the depth buffer.

    false
    
  • emitterExtents: number[]

    An array of 3 numbers that represents the half extents of a local space bounding box within which particles are spawned at random positions.

    [0,0,0]
    
  • emitterRadius: number

    The radius within which particles are spawned at random positions.

    0
    
  • emitterShape: number

    Shape of the emitter. Can be: pc.EMITTERSHAPE_BOX, pc.EMITTERSHAPE_SPHERE.

    0
    
  • enabled: boolean

    Whether the component is enabled.

    true
    
  • halfLambert: boolean

    If true avoid particles looking too flat when lights appear to be shining towards the back sides of the particles.

    false
    
  • intensity: number

    Scales the color of particles to allow them to have arbitrary brightness.

    1
    
  • layers: number[]

    An array of layer id's that this particle system belongs to. When a particle system belongs to multiple layers it will be rendered multiple times.

    [0]
    
  • lighting: boolean

    If true, the particle will be lit by the directional and ambient light in the scene.

    false
    
  • loop: boolean

    If true, the particle system will emit indefinitely. Otherwise, it will emit the number of particles specified by the numParticles property and then stop.

    true
    
  • mesh: number

    The id of a model asset. The first mesh found in the model is used to represent all particles rather than a flat billboard.

    null
    
  • normalMapAsset: number

    The id of the normal map texture asset to apply to all particles in the system.

    null
    
  • numParticles: number

    The maximum number of particles managed by this particle system.

    30
    
  • orientation: number

    Orientation mode controls particle planes facing.

    0
    
  • particleNormal: number[]

    An array of 3 numbers that represents either world or emitter space vector to define particle plane orientation.

    [0,1,0]
    
  • preWarm: boolean

    If true, the particle system will be initialized as though it had already completed a full cycle.

    false
    
  • radialSpeedGraph: object

    A curve defining how particle's radial speed changes over time. Individual particle radial velocity points from emitter origin to particle current position.

    {"type":1,"keys":[0,0],"betweenCurves":false}
    
  • rotationSpeedGraph: object

    A curve defining how each particle's angular velocity changes over time.

    {"type":1,"keys":[0,0],"betweenCurves":false}
    
  • scaleGraph: object

    A curve defining how each particle's scale changes over time. By default, a particle is 1 unit in width and height.

    {"type":1,"keys":[0,0.1],"betweenCurves":false}
    
  • screenSpace: boolean

    Renders particles in 2D screen space.

    false
    
  • sort: number

    Sorting mode gives you control over the order in which particles are rendered.

    0
    
  • startAngle: number

    The bounds of the initial particle rotation specified in degrees.

    0
    
  • velocityGraph: object

    A curve defining how each particle's velocity with respect to the world coordinate system changes over time.

    {"type":1,"keys":[[0,-1],[0,-1],[0,-1]],"betweenCurves":true}
    
  • wrap: boolean

    Enables wrap bounds.

    false
    
  • wrapBounds: number[]

    An array of 3 numbers that represents the world space AABB volume centered on the owner entity's position.

    [0,0,0]