The Camera used for filters. You can use this to alter the perspective of filters. It is not necessary to use this camera for ordinary rendering.
This is only available if you use the enableFilters method.
ReadonlyfiltersGet the filters lists.
This is an object with internal and external properties.
Each list is a {@see Phaser.GameObjects.Components.FilterList} object.
This is only available if you use the enableFilters method.
Whether filterCamera should update every frame
to focus on the Game Object.
Disable this if you want to manually control the camera.
Whether the filters should focus on the context, rather than attempt to focus on the Game Object. This is enabled automatically when enabling filters on objects which don't have well-defined bounds.
This effectively sets the internal filters to render the same way as the external filters.
This is only used if filtersAutoFocus is enabled.
The "context" is the framebuffer to which the Game Object is rendered. This is usually the main framebuffer, but might be another framebuffer. It can even be several different framebuffers if the Game Object is rendered multiple times.
Whether the Filters component should always draw to a framebuffer, even if there are no active filters.
The maximum size of the base filter texture. Filters may use a larger texture after the base texture is rendered. The maximum texture size is 4096 in WebGL. You may set this lower to save memory or prevent resizing.
Whether any filters should be rendered on this Game Object.
This is true by default, even if there are no filters yet.
Disable this to skip filter rendering.
Use willRenderFilters() to see if there are any active filters.
Enable this Game Object to have filters.
You need to call this method if you want to use the filterCamera
and filters properties. It sets up the necessary data structures.
You may disable filter rendering with the renderFilters property.
This is a WebGL only feature. It will return early if not available.
Focus the filter camera.
This sets the size and position of the filter camera to match the GameObject.
This is called automatically on render if filtersAutoFocus is enabled.
This will focus on the GameObject's raw dimensions if available. If the GameObject has no dimensions, this will focus on the context: the camera belonging to the DrawingContext used to render the GameObject. Context focus occurs during rendering, as the context is not known until then.
Manually override the focus of the filter camera.
This allows you to set the size and position of the filter camera manually.
It deactivates filtersAutoFocus when called.
The camera will set scroll to place the game object at the
given position within a rectangle of the given width and height.
For example, calling focusFiltersOverride(400, 200, 800, 600)
will focus the camera to place the object's center
100 pixels above the center of the camera (which is at 400x300).
Optionalx: numberThe x-coordinate of the focus point, relative to the filter size. Default is the center.
Optionaly: numberThe y-coordinate of the focus point, relative to the filter size. Default is the center.
Optionalwidth: numberThe width of the focus area. Default is the filter width.
Optionalheight: numberThe height of the focus area. Default is the filter height.
Render this object using filters.
This function's scope is not guaranteed, so it doesn't refer to this.
The WebGL Renderer instance to render with.
The Game Object being rendered.
The current drawing context.
OptionalparentMatrix: TransformMatrixThe parent matrix of the Game Object, if it has one.
OptionalrenderStep: numberThe index of this function in the Game Object's list of render processes. Used to support multiple rendering functions. Default 0.
Set whether filters should be updated every frame.
Sets the filtersAutoFocus property.
Whether filters should be updated every frame.
Set whether the filters should focus on the context.
Sets the filtersFocusContext property.
Whether the filters should focus on the context.
Set whether the filters should always draw to a framebuffer.
Sets the filtersForceComposite property.
Whether the object should always draw to a framebuffer, even if there are no active filters.
Set the base size of the filter camera. This is the size of the texture that internal filters will be drawn to. External filters are drawn to the size of the context (usually the game canvas).
This is typically the size of the GameObject.
It is set automatically when the Game Object is rendered
and filtersAutoFocus is enabled.
Turn off auto focus to set it manually.
Technically, larger framebuffers may be used to provide padding. This is the size of the final framebuffer used for "internal" rendering.
Base width of the filter texture.
Base height of the filter texture.
Set whether the filters should be rendered.
Sets the renderFilters property.
Whether the filters should be rendered.
Whether this Game Object will render filters.
This is true if it has active filters,
and if the renderFilters property is also true.
Provides methods used for setting the filters properties of a Game Object. These apply special effects, post-processing and masks to the object. Should be applied as a mixin and not used directly.
Filters work by rendering the object to a texture. The texture is then rendered again for each filter, using a shader. See Phaser.GameObjects.Components.FilterList for more information.
Enable filters with
enableFilters(). Each object with filters enabled, and any filters active, makes a new draw call, plus one or more per active filter. This can be expensive. Use sparingly.Camera
Filters has a
filterCameraproperty, which is a Camera. The Camera does most of the hard work, including the filters.The Camera automatically focuses on the Game Object, so you should not need to adjust it manually. If you do want to adjust it, you can use
focusFiltersOverride.Framebuffer Coverage
Filters are rendered to a framebuffer, which is a texture. Anything outside the bounds of the framebuffer is not rendered. Think of it as a window into another world.
To ensure that the game object fits into the framebuffer, the internal camera is transformed to match the object. The object can transform normally, and the camera will follow while
filtersAutoFocusis enabled.