Skip to main content
Version: Phaser v4.0.0

FilterBlur

A RenderNode that applies a multi-pass Gaussian blur effect, driven by a Phaser.Filters.Blur controller.

Rather than running a blur shader directly, this node acts as a dispatcher: it inspects the controller's quality setting and delegates to one of three dedicated blur nodes — FilterBlurLow (quality 0), FilterBlurMed (quality 1), or FilterBlurHigh (quality 2).

For each step requested by the controller, the node performs two separated passes — one horizontal and one vertical. Because Gaussian blurs are axis-separable, this produces the same visual result as a single full 2D Gaussian pass while being significantly cheaper to execute. Padding is applied only on the first pass so that subsequent passes do not progressively grow the render area.

Constructor

new FilterBlur(manager)

Parameters

nametypeoptionaldescription
managerPhaser.Renderer.WebGL.RenderNodes.RenderNodeManagerNoThe manager that owns this RenderNode.

Scope: static

Extends

Phaser.Renderer.WebGL.RenderNodes.BaseFilter

Source: src/renderer/webgl/renderNodes/filters/FilterBlur.js#L11
Since: 4.0.0

Inherited Methods

From Phaser.Renderer.WebGL.RenderNodes.RenderNode:


Public Methods

run

<instance> run(controller, inputDrawingContext, outputDrawingContext, [padding])

Description:

Runs the Blur filter effect.

The method selects the appropriate blur shader node based on controller.quality, then executes controller.steps iterations of axis-separated Gaussian blur. Each iteration consists of a horizontal pass followed by a vertical pass. Padding from the controller is applied on the first pass only; subsequent passes use an empty rectangle so the render area does not grow with each iteration.

Parameters:

nametypeoptionaldescription
controllerPhaser.Filters.BlurNoThe Blur filter controller, supplying quality, steps, strength, color, and axis blur amounts.
inputDrawingContextPhaser.Renderer.WebGL.DrawingContextNoThe drawing context containing the source texture to blur.
outputDrawingContextPhaser.Renderer.WebGL.DrawingContextNoThe drawing context to receive the final blurred output.
paddingPhaser.Geom.RectangleYesPadding to apply around the render area on the first pass. If omitted, it is retrieved from the controller.

Overrides: Phaser.Renderer.WebGL.RenderNodes.BaseFilter#run

Returns: Phaser.Renderer.WebGL.DrawingContext - The drawing context containing the blurred result.

Source: src/renderer/webgl/renderNodes/filters/FilterBlur.js#L43
Since: 4.0.0


Inherited Members

From Phaser.Renderer.WebGL.RenderNodes.RenderNode: