Class: ParticleContainer

PIXI.particles.ParticleContainer

The ParticleContainer class is a really fast version of the Container built solely for speed, so use when you need a lot of sprites or particles. The tradeoff of the ParticleContainer is that most advanced functionality will not work. ParticleContainer implements the basic object transform (position, scale, rotation) and some advanced functionality like tint (as of v4.5.6). Other more advanced functionality like masking, children, filters, etc will not work on sprites in this batch.

It's extremely easy to use :

let container = new ParticleContainer();

for (let i = 0; i < 100; ++i)
{
    let sprite = new PIXI.Sprite.fromImage("myImage.png");
    container.addChild(sprite);
}

And here you have a hundred sprites that will be rendered at the speed of light.

new PIXI.particles.ParticleContainer (maxSize, properties, batchSize, autoResize)

Name Type Default Description
maxSize number 1500 optional

The maximum number of particles that can be rendered by the container. Affects size of allocated buffers.

properties object optional

The properties of children that should be uploaded to the gpu and applied.

Name Type Default Description
vertices boolean false optional

When true, vertices be uploaded and applied. if sprite's scale/anchor/trim/frame/orig is dynamic, please set true.

position boolean true optional

When true, position be uploaded and applied.

rotation boolean false optional

When true, rotation be uploaded and applied.

uvs boolean false optional

When true, uvs be uploaded and applied.

tint boolean false optional

When true, alpha and tint be uploaded and applied.

batchSize number 16384 optional

Number of particles per batch. If less than maxSize, it uses maxSize instead.

autoResize boolean false optional

If true, container allocates more batches in case there are more than maxSize particles.

Extends

Members

alpha number inherited

The opacity of the object.

autoResize boolean

If true, container allocates more batches in case there are more than maxSize particles.

Default Value:
  • false

baseTexture BaseTexture readonly

The texture used to render the children.

blendMode number

The blend mode to be applied to the sprite. Apply a value of PIXI.BLEND_MODES.NORMAL to reset the blend mode.

Default Value:
  • PIXI.BLEND_MODES.NORMAL
See:

buttonMode boolean inherited

If enabled, the mouse cursor use the pointer behavior when hovered over the displayObject if it is interactive Setting this changes the 'cursor' property to 'pointer'.

Example
const sprite = new PIXI.Sprite(texture);
sprite.interactive = true;
sprite.buttonMode = true;

cacheAsBitmap boolean inherited

Set this to true if you want this display object to be cached as a bitmap. This basically takes a snap shot of the display object as it is at that moment. It can provide a performance benefit for complex static displayObjects. To remove simply set this property to 'false'

IMPORTANT GOTCHA - make sure that all your textures are preloaded BEFORE setting this property to true as it will take a snapshot of what is currently there. If the textures have not loaded then they will not appear.

children readonly inherited

The array of children of this container.

cursor string inherited

This defines what cursor mode is used when the mouse cursor is hovered over the displayObject.

See:
Example
const sprite = new PIXI.Sprite(texture);
sprite.interactive = true;
sprite.cursor = 'wait';

The area the filter is applied to. This is used as more of an optimisation rather than figuring out the dimensions of the displayObject each frame you can set this rectangle

Also works as an interaction mask

filters inherited

Sets the filters for the displayObject.

  • IMPORTANT: This is a webGL only feature and will be ignored by the canvas renderer. To remove filters simply set this property to 'null'

height number inherited

The height of the Container, setting this will actually modify the scale to achieve the value set

Interaction shape. Children will be hit first, then this shape will be checked. Setting this will cause this shape to be checked in hit tests rather than the displayObject's bounds.

Example
const sprite = new PIXI.Sprite(texture);
sprite.interactive = true;
sprite.hitArea = new PIXI.Rectangle(0, 0, 100, 100);

interactive boolean inherited

Enable interaction events for the DisplayObject. Touch, pointer and mouse events will not be emitted unless interactive is set to true.

Example
const sprite = new PIXI.Sprite(texture);
sprite.interactive = true;
sprite.on('tap', (event) => {
   //handle event
});

interactiveChildren boolean overrides

localTransform PIXI.Matrix readonly inherited

Current transform of the object based on local factors: position, scale, other stuff

Sets a mask for the displayObject. A mask is an object that limits the visibility of an object to the shape of the mask applied to it. In PIXI a regular mask must be a PIXI.Graphics or a PIXI.Sprite object. This allows for much faster masking in canvas as it utilises shape clipping. To remove a mask, set this property to null.

TODO
  • For the moment, PIXI.CanvasRenderer doesn't support PIXI.Sprite as mask.

name string inherited

The instance name of the object.

parent PIXI.Container readonly inherited

The display object container that contains this display object.

The pivot point of the displayObject that it rotates around. Assignment by value since pixi-v4.

The coordinate of the object relative to the local coordinates of the parent. Assignment by value since pixi-v4.

renderable boolean inherited

Can this object be rendered, if false the object will not be drawn but the updateTransform methods will still be called.

Only affects recursive calls from parent. You can ask for bounds manually

rotation number inherited

The rotation of the object in radians.

roundPixels boolean

Used for canvas renderering. If true then the elements will be positioned at the nearest pixel. This provides a nice speed boost.

Default Value:
  • true;

The scale factor of the object. Assignment by value since pixi-v4.

The skew factor for the object in radians. Assignment by value since pixi-v4.

tint number

The tint applied to the container. This is a hex value. A value of 0xFFFFFF will remove any tint effect.

  • IMPORTANT: This is a webGL only feature and will be ignored by the canvas renderer.
Default Value:
  • 0xFFFFFF

World transform and local transform of this object. This will become read-only later, please do not assign anything there unless you know what are you doing

visible boolean inherited

The visibility of the object. If false the object will not be drawn, and the updateTransform function will not be called.

Only affects recursive calls from parent. You can ask for bounds or call updateTransform manually

width number inherited

The width of the Container, setting this will actually modify the scale to achieve the value set

worldAlpha number readonly inherited

The multiplied alpha of the displayObject

worldTransform PIXI.Matrix readonly inherited

Current transform of the object based on world (parent) factors

worldVisible boolean readonly inherited

Indicates if the object is globally visible.

x number inherited

The position of the displayObject on the x axis relative to the local coordinates of the parent. An alias to position.x

y number inherited

The position of the displayObject on the y axis relative to the local coordinates of the parent. An alias to position.y

Methods

_calculateBounds () inherited

Recalculates the bounds of the object. Override this to calculate the bounds of the specific object (not including children).

_recursivePostUpdateTransform () inherited

recursively updates transform of all objects from the root to this one internal function for toLocal()

Shortcut for setAlpha.

Name Type Description
alpha Number

The alpha amount to use, from 0 to 1

Returns:
Type Description
PIXI.DisplayObject Instance for chaining

Shortcut for addChild.

Name Type Description
child* * optional

N-number of children

Returns:
Type Description
PIXI.DisplayObject Instance of first child added

Adds one or more children to the container.

Multiple items can be added like so: myContainer.addChild(thingOne, thingTwo, thingThree)

Name Type Description
child PIXI.DisplayObject repeatable

The DisplayObject(s) to add to the container

Returns:
Type Description
PIXI.DisplayObject The first child that was added.

addChildAt (child, index)PIXI.DisplayObject inherited

Adds a child to the container at a specified index. If the index is out of bounds an error will be thrown

Name Type Description
child PIXI.DisplayObject

The child to add

index number

The index to place the child in

Returns:
Type Description
PIXI.DisplayObject The child that was added.

Shortcut to setColor.

Name Type Description
r Number

The multiply red value

rA Number

The additive red value

g Number

The multiply green value

gA Number

The additive green value

b Number

The multiply blue value

bA Number

The additive blue value

Returns:
Type Description
PIXI.DisplayObject Object for chaining

calculateBounds () inherited

Recalculates the bounds of the container.

Destroys the container

Name Type Description
options object | boolean optional

Options parameter. A boolean will act as if all options have been set to that value

Name Type Default Description
children boolean false optional

if set to true, all the children will have their destroy method called as well. 'options' will be passed on to those calls.

texture boolean false optional

Only used for child Sprites if options.children is set to true Should it destroy the texture of the child sprite

baseTexture boolean false optional

Only used for child Sprites if options.children is set to true Should it destroy the base texture of the child sprite

getBounds (skipUpdate, rect)PIXI.Rectangle inherited

Retrieves the bounds of the displayObject as a rectangle object.

Name Type Description
skipUpdate boolean

setting to true will stop the transforms of the scene graph from being updated. This means the calculation returned MAY be out of date BUT will give you a nice performance boost

rect PIXI.Rectangle

Optional rectangle to store the result of the bounds calculation

Returns:
Type Description
PIXI.Rectangle the rectangular bounding area

Returns the child at the specified index

Name Type Description
index number

The index to get the child at

Returns:
Type Description
PIXI.DisplayObject The child at the given index, if any.

Returns the display object in the container

Name Type Description
name string

instance name

Returns:
Type Description
PIXI.DisplayObject The child with the specified name.

getChildIndex (child)number inherited

Returns the index position of a child DisplayObject instance

Name Type Description
child PIXI.DisplayObject

The DisplayObject instance to identify

Returns:
Type Description
number The index position of the child display object to identify

getGlobalPosition (point, skipUpdate)Point inherited

Returns the global position of the displayObject. Does not depend on object scale, rotation and pivot.

Name Type Description
point Point

the point to write the global value to. If null a new point will be returned

skipUpdate boolean

setting to true will stop the transforms of the scene graph from being updated. This means the calculation returned MAY be out of date BUT will give you a nice performance boost

Returns:
Type Description
Point The updated point

Retrieves the local bounds of the displayObject as a rectangle object

Name Type Description
rect PIXI.Rectangle optional

Optional rectangle to store the result of the bounds calculation

Returns:
Type Description
PIXI.Rectangle the rectangular bounding area

Shortcut for setMask.

Name Type Description
mask PIXI.Sprite | PIXI.Graphics

The mask shape to use

Returns:
Type Description
PIXI.DisplayObject Instance for chaining

Shortcut to setRenderable.

Name Type Default Description
renderable Boolean false optional

Make renderable

Returns:
Type Description
PIXI.DisplayObject

Removes one or more children from the container.

Name Type Description
child PIXI.DisplayObject repeatable

The DisplayObject(s) to remove

Returns:
Type Description
PIXI.DisplayObject The first child that was removed.

Removes a child from the specified index position.

Name Type Description
index number

The index to get the child from

Returns:
Type Description
PIXI.DisplayObject The child that was removed.

removeChildren (beginIndex, endIndex) inherited

Removes all children from this container that are within the begin and end indexes.

Name Type Default Description
beginIndex number 0 optional

The beginning position.

endIndex number this.children.length optional

The ending position. Default value is size of the container.

Returns:
Type Description
List of removed children

Setter for the alpha

Name Type Description
alpha Number

The alpha amount to use, from 0 to 1

Returns:
Type Description
PIXI.DisplayObject Instance for chaining

setChildIndex (child, index) inherited

Changes the position of an existing child in the display object container

Name Type Description
child PIXI.DisplayObject

The child DisplayObject instance for which you want to change the index number

index number

The resulting index number for the child display object

setColorTransform (r, rA, g, gA, b, bA)PIXI.DisplayObject inherited

Set additive and multiply color, tinting

Name Type Description
r Number

The multiply red value

rA Number

The additive red value

g Number

The multiply green value

gA Number

The additive green value

b Number

The multiply blue value

bA Number

The additive blue value

Returns:
Type Description
PIXI.DisplayObject Object for chaining

Setter for mask to be able to chain.

Name Type Description
mask PIXI.Graphics

The mask shape to use

Returns:
Type Description
PIXI.DisplayObject Instance for chaining

Set the parent Container of this DisplayObject

Name Type Description
container PIXI.Container

The Container to add this DisplayObject to

Returns:
Type Description
PIXI.Container The Container that this DisplayObject was added to

setProperties (properties)

Sets the private properties array to dynamic / static based on the passed properties object

Name Type Description
properties object

The properties to be uploaded

Function to see if this is renderable or not. Useful for setting masks.

Name Type Default Description
renderable Boolean false optional

Make renderable

Returns:
Type Description
PIXI.DisplayObject

Set the tint values by color.

Name Type Description
tint int

The color value to tint

Returns:
Type Description
PIXI.DisplayObject Object for chaining

setTransform (x, y, scaleX, scaleY, rotation, skewX, skewY, pivotX, pivotY)PIXI.DisplayObject inherited

Convenience function to set the position, scale, skew and pivot at once.

Name Type Default Description
x number 0 optional

The X position

y number 0 optional

The Y position

scaleX number 1 optional

The X scale value

scaleY number 1 optional

The Y scale value

rotation number 0 optional

The rotation

skewX number 0 optional

The X skew value

skewY number 0 optional

The Y skew value

pivotX number 0 optional

The X pivot value

pivotY number 0 optional

The Y pivot value

Returns:
Type Description
PIXI.DisplayObject The DisplayObject instance

swapChildren (child, child2) inherited

Swaps the position of 2 Display Objects within this container.

Name Type Description
child PIXI.DisplayObject

First display object to swap

child2 PIXI.DisplayObject

Second display object to swap

Shortcut to setTint.

Name Type Description
tint Number | String

The red percentage value

Returns:
Type Description
PIXI.DisplayObject Object for chaining

toGlobal (position, point, skipUpdate)PIXI.Point inherited

Calculates the global position of the display object

Name Type Default Description
position PIXI.Point

The world origin to calculate from

point PIXI.Point optional

A Point object in which to store the value, optional (otherwise will create a new Point)

skipUpdate boolean false optional

Should we skip the update transform.

Returns:
Type Description
PIXI.Point A point object representing the position of this object

toLocal (position, from, point, skipUpdate)PIXI.Point inherited

Calculates the local position of the display object relative to another point

Name Type Default Description
position PIXI.Point

The world origin to calculate from

from PIXI.DisplayObject optional

The DisplayObject to calculate the global position from

point PIXI.Point optional

A Point object in which to store the value, optional (otherwise will create a new Point)

skipUpdate boolean false optional

Should we skip the update transform

Returns:
Type Description
PIXI.Point A point object representing the position of this object

tr (x, y, scaleX, scaleY, skewX, skewY, pivotX, pivotY)PIXI.DisplayObject inherited

Shortcut for setTransform.

Name Type Description
x Number

The X position

y Number

The Y position

scaleX Number

The X Scale value

scaleY Number

The Y Scale value

skewX Number

The X skew value

skewY Number

The Y skew value

pivotX Number

The X pivot value

pivotY Number

The Y pivot value

Returns:
Type Description
PIXI.DisplayObject Instance for chaining

Events

Fired when this DisplayObject is added to a Container.

Name Type Description
container PIXI.Container

The container added to.

Fired when a pointer device button (usually a mouse left-button) is pressed and released on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button (usually a mouse left-button) is pressed on the display. object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device (usually a mouse) is moved while over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device (usually a mouse) is moved off the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device (usually a mouse) is moved onto the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button (usually a mouse left-button) is released over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button (usually a mouse left-button) is released outside the display object that initially registered a mousedown. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when the operating system cancels a pointer event. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is pressed on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device is moved while over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device is moved off the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device is moved onto the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is pressed and released on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is released over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device button is released outside the display object that initially registered a pointerdown. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when this DisplayObject is removed from a Container.

Name Type Description
container PIXI.Container

The container removed from.

Fired when a pointer device secondary button (usually a mouse right-button) is pressed and released on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device secondary button (usually a mouse right-button) is pressed on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device secondary button (usually a mouse right-button) is released over the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a pointer device secondary button (usually a mouse right-button) is released outside the display object that initially registered a rightdown. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a touch point is placed and removed from the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when the operating system cancels a touch. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a touch point is removed from the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a touch point is removed outside of the display object that initially registered a touchstart. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a touch point is moved along the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event

Fired when a touch point is placed on the display object. DisplayObject's interactive property must be set to true to fire event.

Name Type Description
event PIXI.interaction.InteractionEvent

Interaction event