Phaser API Documentation

  Version: 
Filter
This is a beta release of our new docs system. Found an issue?
Please tell us about it in the #📖-newdocs-feedback channel on the Phaser Discord
Namespace: Pipeline
Phaser.GameObjects.Components.Pipeline

Members

Only webGL defaultPipeline: Phaser.Renderer.WebGL.WebGLPipeline
Focus
Focus

Description:

The initial WebGL pipeline of this Game Object.

If you call resetPipeline on this Game Object, the pipeline is reset to this default.

Type:
Default: null
Since: 3.0.0
Focus
Focus
Only webGL hasPostPipeline: boolean
Focus
Focus

Description:

Does this Game Object have any Post Pipelines set?

Type:
boolean
Since: 3.50.0
Focus
Focus

Description:

The current WebGL pipeline of this Game Object.

Type:
Default: null
Since: 3.0.0
Focus
Focus
Only webGL pipelineData: object
Focus
Focus

Description:

An object to store pipeline specific data in, to be read by the pipelines this Game Object uses.

Type:
object
Since: 3.50.0
Focus
Focus
Only webGL postPipeline: Array.<Phaser.Renderer.WebGL.Pipelines.PostFXPipeline>
Focus
Focus

Description:

The WebGL Post FX Pipelines this Game Object uses for post-render effects.

The pipelines are processed in the order in which they appear in this array.

If you modify this array directly, be sure to set the hasPostPipeline property accordingly.

Type:
Since: 3.50.0
Focus
Focus

Methods

Only webGL initPipeline(pipeline)
Focus
Focus

Description:

Sets the initial WebGL Pipeline of this Game Object.

This should only be called during the instantiation of the Game Object. After that, use setPipeline.

Parameters:

name type description
pipeline string | Phaser.Renderer.WebGL.WebGLPipeline

Either the string-based name of the pipeline, or a pipeline instance to set.

Returns:
Description:

true if the pipeline was set successfully, otherwise false.

Type:
  • boolean
Examples:
Since: 3.0.0
Focus
Focus
Only webGL setPipeline(pipeline, [pipelineData], [copyData])
Focus
Focus

Description:

Sets the main WebGL Pipeline of this Game Object.

Also sets the pipelineData property, if the parameter is given.

Both the pipeline and post pipelines share the same pipeline data object.

Parameters:

name type arguments Default description
pipeline string | Phaser.Renderer.WebGL.WebGLPipeline

Either the string-based name of the pipeline, or a pipeline instance to set.

pipelineData object <optional>

Optional pipeline data object that is deep copied into the pipelineData property of this Game Object.

copyData boolean <optional> true

Should the pipeline data object be deep copied into the pipelineData property of this Game Object? If false it will be set by reference instead.

Returns:
Description:

This Game Object instance.

Examples:
Since: 3.0.0
Focus
Focus
Only webGL setPostPipeline(pipelines, [pipelineData], [copyData])
Focus
Focus

Description:

Sets one, or more, Post Pipelines on this Game Object.

Post Pipelines are invoked after this Game Object has rendered to its target and are commonly used for post-fx.

The post pipelines are appended to the postPipelines array belonging to this Game Object. When the renderer processes this Game Object, it iterates through the post pipelines in the order in which they appear in the array. If you are stacking together multiple effects, be aware that the order is important.

If you call this method multiple times, the new pipelines will be appended to any existing post pipelines already set. Use the resetPostPipeline method to clear them first, if required.

You can optionally also sets the pipelineData property, if the parameter is given.

Both the pipeline and post pipelines share the pipeline data object together.

Parameters:

name type arguments Default description
pipelines string | Array.<string> | function | Array.<function()> | Phaser.Renderer.WebGL.Pipelines.PostFXPipeline | Array.<Phaser.Renderer.WebGL.Pipelines.PostFXPipeline>

Either the string-based name of the pipeline, or a pipeline instance, or class, or an array of them.

pipelineData object <optional>

Optional pipeline data object that is deep copied into the pipelineData property of this Game Object.

copyData boolean <optional> true

Should the pipeline data object be deep copied into the pipelineData property of this Game Object? If false it will be set by reference instead.

Returns:
Description:

This Game Object instance.

Examples:
Since: 3.50.0
Focus
Focus
Only webGL setPipelineData(key, [value])
Focus
Focus

Description:

Adds an entry to the pipelineData object belonging to this Game Object.

If the 'key' already exists, its value is updated. If it doesn't exist, it is created.

If value is undefined, and key exists, key is removed from the data object.

Both the pipeline and post pipelines share the pipeline data object together.

Parameters:

name type arguments description
key string

The key of the pipeline data to set, update, or delete.

value any <optional>

The value to be set with the key. If undefined then key will be deleted from the object.

Returns:
Description:

This Game Object instance.

Examples:
Since: 3.50.0
Focus
Focus
Only webGL getPostPipeline(pipeline)
Focus
Focus

Description:

Gets a Post Pipeline instance from this Game Object, based on the given name, and returns it.

Parameters:

name type description
pipeline string | function | Phaser.Renderer.WebGL.Pipelines.PostFXPipeline

The string-based name of the pipeline, or a pipeline class.

Returns:
Description:

The Post Pipeline/s matching the name, or undefined if no match. If more than one match they are returned in an array.

Examples:
Since: 3.50.0
Focus
Focus
Only webGL resetPipeline([resetPostPipelines], [resetData])
Focus
Focus

Description:

Resets the WebGL Pipeline of this Game Object back to the default it was created with.

Parameters:

name type arguments Default description
resetPostPipelines boolean <optional> false

Reset all of the post pipelines?

resetData boolean <optional> false

Reset the pipelineData object to being an empty object?

Returns:
Description:

true if the pipeline was reset successfully, otherwise false.

Type:
  • boolean
Examples:
Since: 3.0.0
Focus
Focus
Only webGL resetPostPipeline([resetData])
Focus
Focus

Description:

Resets the WebGL Post Pipelines of this Game Object. It does this by calling the destroy method on each post pipeline and then clearing the local array.

Parameters:

name type arguments Default description
resetData boolean <optional> false

Reset the pipelineData object to being an empty object?

Examples:
Since: 3.50.0
Focus
Focus
Only webGL removePostPipeline(pipeline)
Focus
Focus

Description:

Removes a type of Post Pipeline instances from this Game Object, based on the given name, and destroys them.

If you wish to remove all Post Pipelines use the resetPostPipeline method instead.

Parameters:

name type description
pipeline string | Phaser.Renderer.WebGL.Pipelines.PostFXPipeline

The string-based name of the pipeline, or a pipeline class.

Returns:
Description:

This Game Object.

Examples:
Since: 3.50.0
Focus
Focus
Only webGL getPipelineName()
Focus
Focus

Description:

Gets the name of the WebGL Pipeline this Game Object is currently using.

Returns:
Description:

The string-based name of the pipeline being used by this Game Object.

Type:
  • string
Examples:
Since: 3.0.0
Focus
Focus