Phaser API Documentation

  Version: 
Filter

A Render Target encapsulates a WebGL framebuffer and the WebGL Texture that displays it.

Instances of this class are typically created by, and belong to WebGL Pipelines, however other Game Objects and classes can take advantage of Render Targets as well.

Constructor:

new RenderTarget(renderer, width, height, [scale], [minFilter], [autoClear], [autoResize], [addDepthBuffer], [forceClamp])

Parameters:

name type arguments Default description
renderer Phaser.Renderer.WebGL.WebGLRenderer

A reference to the WebGLRenderer.

width number

The width of this Render Target.

height number

The height of this Render Target.

scale number <optional> 1

A value between 0 and 1. Controls the size of this Render Target in relation to the Renderer.

minFilter number <optional> 0

The minFilter mode of the texture when created. 0 is LINEAR, 1 is NEAREST.

autoClear boolean <optional> true

Automatically clear this framebuffer when bound?

autoResize boolean <optional> false

Automatically resize this Render Target if the WebGL Renderer resizes?

addDepthBuffer boolean <optional> true

Add a DEPTH_STENCIL and attachment to this Render Target?

forceClamp boolean <optional> true

Force the texture to use the CLAMP_TO_EDGE wrap mode, even if a power of two?

Since: 3.50.0

Members

autoClear: boolean
Focus
Focus

Description:

Controls if this Render Target is automatically cleared (via gl.COLOR_BUFFER_BIT) during the RenderTarget.bind method.

If you need more control over how, or if, the target is cleared, you can disable this via the config on creation, or even toggle it directly at runtime.

Type:
boolean
Since: 3.50.0
Focus
Focus
<readonly> autoResize: boolean
Focus
Focus

Description:

Does this Render Target automatically resize when the WebGL Renderer does?

Modify this property via the setAutoResize method.

Type:
boolean
Since: 3.50.0
Focus
Focus
destroy:
Focus
Focus

Description:

Removes all external references from this class and deletes the WebGL framebuffer and texture instances.

Does not remove this Render Target from the parent pipeline.

Since: 3.50.0
Focus
Focus
forceClamp: boolean
Focus
Focus

Description:

Force the WebGL Texture to use the CLAMP_TO_EDGE wrap mode, even if a power of two?

If false it will use gl.REPEAT instead, which may be required for some effects, such as using this Render Target as a texture for a Shader.

Type:
boolean
Since: 3.60.0
Focus
Focus

Description:

The Framebuffer of this Render Target.

This is created in the RenderTarget.resize method.

Type:
Since: 3.50.0
Focus
Focus
<readonly> hasDepthBuffer: boolean
Focus
Focus

Description:

Does this Render Target have a Depth Buffer?

Type:
boolean
Since: 3.60.0
Focus
Focus
<readonly> height: number
Focus
Focus

Description:

The height of the texture.

Type:
number
Since: 3.50.0
Focus
Focus
minFilter: number
Focus
Focus

Description:

The minFilter mode of the texture. 0 is LINEAR, 1 is NEAREST.

Type:
number
Since: 3.50.0
Focus
Focus

Description:

A reference to the WebGLRenderer instance.

Type:
Since: 3.50.0
Focus
Focus
scale: number
Focus
Focus

Description:

A value between 0 and 1. Controls the size of this Render Target in relation to the Renderer.

A value of 1 matches it. 0.5 makes the Render Target half the size of the renderer, etc.

Type:
number
Since: 3.50.0
Focus
Focus

Description:

The WebGLTextureWrapper of this Render Target.

This is created in the RenderTarget.resize method.

Type:
Since: 3.50.0
Focus
Focus
unbind:
Focus
Focus

Description:

Unbinds this Render Target and optionally flushes the WebGL Renderer first.

Since: 3.50.0
Focus
Focus
<readonly> width: number
Focus
Focus

Description:

The width of the texture.

Type:
number
Since: 3.50.0
Focus
Focus

Methods

adjustViewport()
Focus
Focus

Description:

Adjusts the GL viewport to match the width and height of this Render Target.

Also disables SCISSOR_TEST.

Since: 3.50.0
Focus
Focus
bind([adjustViewport], [width], [height])
Focus
Focus

Description:

Pushes this Render Target as the current frame buffer of the renderer.

If autoClear is set, then clears the texture.

If adjustViewport is true then it will flush the renderer and then adjust the GL viewport.

Parameters:

name type arguments Default description
adjustViewport boolean <optional> false

Adjust the GL viewport by calling RenderTarget.adjustViewport ?

width number <optional>

Optional new width of this Render Target.

height number <optional>

Optional new height of this Render Target.

Since: 3.50.0
Focus
Focus
clear([x], [y], [width], [height])
Focus
Focus

Description:

Clears a portion or everything from this Render Target. To clear an area, specify the x, y, width and height.

Parameters:

name type arguments Default description
x number <optional> 0

The left coordinate of the fill rectangle.

y number <optional> 0

The top coordinate of the fill rectangle.

width number <optional> this.width

The width of the fill rectangle.

height number <optional> this.height

The height of the fill rectangle.

Since: 3.50.0
Focus
Focus
resize(width, height)
Focus
Focus

Description:

Resizes this Render Target as long as the given width and height are different to the current width and height.

Deletes both the frame buffer and texture, if they exist and then re-creates them using the new sizes.

This method is called automatically by the pipeline during its resize handler.

Previous to Phaser v3.85 this method would only run if autoResize was true, it will now run regardless.

Parameters:

name type description
width number

The new width of this Render Target.

height number

The new height of this Render Target.

Returns:
Description:

This RenderTarget instance.

Since: 3.50.0
Focus
Focus
setAutoResize(autoResize)
Focus
Focus

Description:

Sets if this Render Target should automatically resize when the WebGL Renderer emits a resize event.

Parameters:

name type description
autoResize boolean

Automatically resize this Render Target when the WebGL Renderer resizes?

Returns:
Description:

This RenderTarget instance.

Since: 3.50.0
Focus
Focus
willResize(width, height)
Focus
Focus

Description:

Checks if this Render Target will resize, or not, if given the new width and height values.

Parameters:

name type description
width number

The new width of this Render Target.

height number

The new height of this Render Target.

Returns:
Description:

true if the Render Target will resize, otherwise false.

Type:
  • boolean
Since: 3.70.0
Focus
Focus