OptionalmaxSize: numberThe maximum number of particles that can be rendered by the container. Affects size of allocated buffers.
Optionalproperties: IParticlePropertiesThe properties of children that should be uploaded to the gpu and applied.
Optionalalpha?: booleanOptionalposition?: booleanOptionalrotation?: booleanOptionalscale?: booleanOptionaltint?: booleanOptionaluvs?: booleanOptionalvertices?: booleanOptionalbatchSize: numberNumber of particles per batch. If less than maxSize, it uses maxSize instead.
OptionalautoResize: booleanIf true, container allocates more batches in case
there are more than maxSize particles.
Optional_Optional_The bounds object, this is used to calculate and store the bounds of the displayObject.
Local bounds object, swapped with _bounds when using getLocalBounds().
OptionalaccessibleOptionalaccessibleOptionalaccessibleOptionalaccessibleOptionalaccessibleOptionalaccessibleThe opacity of the object.
If true, container allocates more batches in case there are more than maxSize particles.
ReadonlybaseThe texture used to render the children.
The blend mode to be applied to the sprite. Apply a value of PIXI.BLEND_MODES.NORMAL
to reset the blend mode.
ReadonlychildrenThe array of children of this container.
Should this object be rendered if the bounds of this object are out of frame?
Culling has no effect on whether updateTransform is called.
If set, this shape is used for culling instead of the bounds of this object. It can improve the culling performance of objects with many children. The culling area is defined in local space.
The cursor preferred when the mouse pointer is hovering over.
The mode of interaction for this object
The area the filter is applied to. This is used as more of an optimization rather than figuring out the dimensions of the displayObject each frame you can set this rectangle.
Also works as an interaction mask.
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'.
The hit-area specifies the area for which pointer events should be captured by this event target.
Whether this event target should fire UI events.
Whether this event target has any children that need UI events. This can be used optimize event propagation.
Returns true if the DisplayObject has interactive 'static' or 'dynamic'
Does any other displayObject use this object as a mask?
Used to fast check if a sprite is.. a sprite!
The maximum size of the filter that can be applied to this displayObject. This is used to optimize the filter, it will be rescaled on filter rendering if overshoots this value. 0 means no limit.
Handler for 'click' event
Handler for 'globalmousemove' event
Handler for 'globalpointermove' event
Handler for 'globaltouchmove' event
Handler for 'mousedown' event
Handler for 'mouseenter' event
Handler for 'mouseleave' event
Handler for 'mousemove' event
Handler for 'mouseout' event
Handler for 'mouseover' event
Handler for 'mouseup' event
Handler for 'mouseupoutside' event
Handler for 'pointercancel' event
Handler for 'pointerdown' event
Handler for 'pointerenter' event
Handler for 'pointerleave' event
Handler for 'pointermove' event
Handler for 'pointerout' event
Handler for 'pointerover' event
Handler for 'pointertap' event
Handler for 'pointerup' event
Handler for 'pointerupoutside' event
Handler for 'rightclick' event
Handler for 'rightdown' event
Handler for 'rightup' event
Handler for 'rightupoutside' event
Handler for 'tap' event
Handler for 'touchcancel' event
Handler for 'touchend' event
Handler for 'touchendoutside' event
Handler for 'touchmove' event
Handler for 'touchstart' event
Handler for 'wheel' event
The display object container that contains this display object.
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.
OptionalrenderIf true PixiJS will Math.floor() x/y values when rendering, stopping pixel interpolation. Advantages can include sharper image quality (like text) and faster rendering on canvas. The main disadvantage is movement of objects may appear less smooth. Default to true here as performance is usually the priority for particles.
If set to true, the container will sort its children by zIndex value
when updateTransform() is called, or manually if sortChildren() is called.
This actually changes the order of elements in the array, so should be treated as a basic solution that is not performant compared to other solutions, such as PixiJS Layers
Also be aware of that this may not work nicely with the addChildAt() function,
as the zIndex sorting may cause the child to automatically sorted to another position.
Should children be sorted by zIndex at the next updateTransform call.
Will get automatically set to true if a new child is added, or if a child's zIndex changes.
OptionaltabWorld 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.
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.
ReadonlyworldThe multiplied alpha of the displayObject.
StaticdefaultSets the default value for the container property sortableChildren.
If set to true, the container will sort its children by zIndex value
when updateTransform() is called, or manually if sortChildren() is called.
This actually changes the order of elements in the array, so should be treated as a basic solution that is not performant compared to other solutions, such as PixiJS Layers.
Also be aware of that this may not work nicely with the addChildAt() function,
as the zIndex sorting may cause the child to automatically sorted to another position.
StaticprefixedThe angle of the object in degrees. 'rotation' and 'angle' have the same effect on a display object; rotation is in radians, angle is in degrees.
Readonly flag for destroyed display objects.
The height of the Container, setting this will actually modify the scale to achieve the value set.
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 PixiJS a regular mask must be a
PIXI.Graphics or a PIXI.Sprite object. This allows for much faster masking in canvas as it
utilities shape clipping. Furthermore, a mask of an object must be in the subtree of its parent.
Otherwise, getLocalBounds may calculate incorrect bounds, which makes the container's width and height wrong.
To remove a mask, set this property to null.
For sprite mask both alpha and red channel are used. Black mask is the same as transparent mask.
The center of rotation, scaling, and skewing for this display object in its local space. The position
is the projection of pivot in the parent's local space.
By default, the pivot is the origin (0, 0).
The coordinate of the object relative to the local coordinates of the parent.
The rotation of the object in radians. 'rotation' and 'angle' have the same effect on a display object; rotation is in radians, angle is in degrees.
The scale factors of this object along the local coordinate axes.
The default scale is (1, 1).
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.
The width of the Container, setting this will actually modify the scale to achieve the value set.
Current transform of the object based on world (parent) factors.
Indicates if the object is globally visible.
The position of the displayObject on the x axis relative to the local coordinates of the parent. An alias to position.x
The position of the displayObject on the y axis relative to the local coordinates of the parent. An alias to position.y
The zIndex of the displayObject.
If a container has the sortableChildren property set to true, children will be automatically sorted by zIndex value; a higher value will mean it will be moved towards the end of the array, and thus rendered on top of other display objects within the same container.
Optionaloptions: boolean | IDestroyOptionsAdds a child to the container at a specified index. If the index is out of bounds an error will be thrown. If the child is already in this container, it will be moved to the specified index.
The child to add.
The absolute index where the child will be positioned at the end of the operation.
The child that was added.
The addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.
Optionaloptions: AddListenerOptionsThe addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.
Optionaloptions: AddListenerOptionsOptionalcontext: anyRecalculates the bounds of the container.
This implementation will automatically fit the children's bounds into the calculation. Each child's bounds is limited to its mask's bounds or filterArea, if any is applied.
Destroys the container
Optionaloptions: boolean | IDestroyOptionsOptions parameter. A boolean will act as if all options have been set to that value
OptionalbaseTexture?: booleanOptionalchildren?: booleanOptionaltexture?: booleanPair method for enableTempParent
Actual parent of element
The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order.
The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order.
Calls each of the listeners registered for a given event.
Used in Renderer, cacheAsBitmap and other places where you call an updateTransform on root.
const cacheParent = elem.enableTempParent();
elem.updateTransform();
elem.disableTempParent(cacheParent);
Return an array listing the events for which the emitter has registered listeners.
Calculates and returns the (world) bounds of the display object as a [Rectangle]PIXI.Rectangle.
This method is expensive on containers with a large subtree (like the stage). This is because the bounds
of a container depend on its children's bounds, which recursively causes all bounds in the subtree to
be recalculated. The upside, however, is that calling getBounds once on a container will indeed update
the bounds of all children (the whole subtree, in fact). This side effect should be exploited by using
displayObject._bounds.getRectangle() when traversing through all the bounds in a scene graph. Otherwise,
calling getBounds on each object in a subtree will cause the total cost to increase quadratically as
its height increases.
The transforms of all objects in a container's subtree and of all ancestors are updated. The world bounds of all display objects in a container's subtree will also be recalculated.
The _bounds object stores the last calculation of the bounds. You can use to entirely skip bounds
calculation if needed.
const lastCalculatedBounds = displayObject._bounds.getRectangle(optionalRect);
Do know that usage of getLocalBounds can corrupt the _bounds of children (the whole subtree, actually). This
is a known issue that has not been solved. See [getLocalBounds]PIXI.DisplayObject#getLocalBounds for more
details.
getBounds should be called with skipUpdate equal to true in a render() call. This is because the transforms
are guaranteed to be update-to-date. In fact, recalculating inside a render() call may cause corruption in certain
cases.
OptionalskipUpdate: booleanSetting 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.
Optionalrect: RectangleOptional rectangle to store the result of the bounds calculation.
Returns the child at the specified index
The index to get the child at
Optionaldeep: booleanReturns the index position of a child DisplayObject instance
The DisplayObject instance to identify
Retrieves the local bounds of the displayObject as a rectangle object.
Calling getLocalBounds may invalidate the _bounds of the whole subtree below. If using it inside a render()
call, it is advised to call getBounds() immediately after to recalculate the world bounds of the subtree.
Optionalrect: RectangleOptional rectangle to store the result of the bounds calculation.
OptionalskipChildrenUpdate: booleanSetting to true will stop re-calculation of children transforms,
it was default behaviour of pixi 4.0-5.2 and caused many problems to users.
Return the number of listeners listening to a given event.
Return the listeners registered for a given event.
Optionalfn: (Optionalcontext: anyOptionalonce: booleanAdd a listener for a given event.
Optionalcontext: anyAdd a one-time listener for a given event.
Optionalcontext: anyRemove all listeners, or those of the specified event.
Optionalevent: keyof DisplayObjectEventsRemoves a child from the specified index position.
The index to get the child from
The child that was removed.
Removes all children from this container that are within the begin and end indexes.
OptionalbeginIndex: numberThe beginning position.
OptionalendIndex: numberThe ending position. Default value is size of the container.
The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target.
Optionaloptions: RemoveListenerOptionsThe removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target.
Optionaloptions: RemoveListenerOptionsRemove the DisplayObject from its parent Container. If the DisplayObject has no parent, do nothing.
Remove the listeners of a given event.
Optionalfn: (Optionalcontext: anyOptionalonce: booleanRenders the container using the WebGL renderer.
The WebGL renderer.
Changes the position of an existing child in the display object container
The child DisplayObject instance for which you want to change the index number
The resulting index number for the child display object
Sets the private properties array to dynamic / static based on the passed properties object
The properties to be uploaded
Convenience function to set the position, scale, skew and pivot at once.
Optionalx: numberThe X position
Optionaly: numberThe Y position
OptionalscaleX: numberThe X scale value
OptionalscaleY: numberThe Y scale value
Optionalrotation: numberThe rotation
OptionalskewX: numberThe X skew value
OptionalskewY: numberThe Y skew value
OptionalpivotX: numberThe X pivot value
OptionalpivotY: numberThe Y pivot value
Sorts children by zIndex. Previous order is maintained for 2 children with the same zIndex.
Calculates the global position of the display object.
The world origin to calculate from.
Optionalpoint: PA Point object in which to store the value, optional (otherwise will create a new Point).
OptionalskipUpdate: booleanShould we skip the update transform.
Calculates the local position of the display object relative to another point.
The world origin to calculate from.
Optionalfrom: DisplayObjectThe DisplayObject to calculate the global position from.
Optionalpoint: PA Point object in which to store the value, optional (otherwise will create a new Point).
OptionalskipUpdate: booleanShould we skip the update transform
Updates the transform on all children of this container for rendering.
StaticmixinMixes all enumerable properties and methods from a source object to DisplayObject.
The source of properties and methods to mix in.
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. And here you have a hundred sprites that will be rendered at the speed of light.
Example
Memberof
PIXI