Class: ColorMatrixFilter

PIXI.filters.ColorMatrixFilter

The ColorMatrixFilter class lets you apply a 5x4 matrix transformation on the RGBA color and alpha values of every pixel on your displayObject to produce a result with a new set of RGBA color and alpha values. It's pretty powerful!

 let colorMatrix = new PIXI.filters.ColorMatrixFilter();
 container.filters = [colorMatrix];
 colorMatrix.contrast(2);

new PIXI.filters.ColorMatrixFilter ()

Author:

Extends

Members

alpha number

The opacity value to use when mixing the original and resultant colors.

When the value is 0, the original color is used without modification. When the value is 1, the result color is used. When in the range (0, 1) the color is interpolated between the original and result by this amount.

Default Value:
  • 1

autoFit boolean inherited

If enabled, PixiJS will fit the filter area into boundaries for better performance. Switch it off if it does not work for specific shader.

blendMode number inherited

Sets the blendmode of the filter

Default Value:
  • PIXI.BLEND_MODES.NORMAL

enabled boolean inherited

If enabled is true the filter is applied, if false it will not.

fragmentSrc string inherited

The fragment shader.

matrix Array.<number>

The matrix of the color matrix filter

Default Value:
  • [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]

padding number inherited

The padding of the filter. Some filters require extra space to breath such as a blur. Increasing this will add extra width and height to the bounds of the object that the filter is applied to.

resolution number inherited

The resolution of the filter. Setting this to be lower will lower the quality but increase the performance of the filter.

uniforms object inherited

An object containing the current values of custom uniforms.

Example

Updating the value of a custom uniform

filter.uniforms.time = performance.now();

vertexSrc string inherited

The vertex shader.

Methods

_loadMatrix (matrix, multiply)

Transforms current matrix and set the new one

Name Type Default Description
matrix Array.<number>

5x4 matrix

multiply boolean false

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

apply (filterManager, input, output, clear, currentState) inherited

Applies the filter

Name Type Description
filterManager PIXI.FilterManager

The renderer to retrieve the filter from

input PIXI.RenderTarget

The input render target.

output PIXI.RenderTarget

The target to output to.

clear boolean

Should the output be cleared before rendering to it

currentState object optional

It's current state of filter. There are some useful properties in the currentState : target, filters, sourceFrame, destinationFrame, renderTarget, resolution

blackAndWhite (multiply)

Set the black and white matrice.

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

brightness (b, multiply)

Adjusts brightness

Name Type Description
b number

value of the brigthness (0-1, where 0 is black)

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

browni (multiply)

Brown delicious browni filter (thanks Dominic Szablewski)

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

colorTone (desaturation, toned, lightColor, darkColor, multiply)

We don't know exactly what it does, kind of gradient map, but funny to play with!

Name Type Description
desaturation number

Tone values.

toned number

Tone values.

lightColor string

Tone values, example: 0xFFE580

darkColor string

Tone values, example: 0xFFE580

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

contrast (amount, multiply)

Set the contrast matrix, increase the separation between dark and bright Increase contrast : shadows darker and highlights brighter Decrease contrast : bring the shadows up and the highlights down

Name Type Description
amount number

value of the contrast (0-1)

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

desaturate ()

Desaturate image (remove color)

Call the saturate function

greyscale (scale, multiply)

Set the matrices in grey scales

Name Type Description
scale number

value of the grey (0-1, where 0 is black)

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

hue (rotation, multiply)

Set the hue property of the color

Name Type Description
rotation number

in degrees

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

kodachrome (multiply)

Color reversal film introduced by Eastman Kodak in 1935. (thanks Dominic Szablewski)

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

lsd (multiply)

LSD effect

Multiply the current matrix

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

negative (multiply)

Negative image (inverse of classic rgb matrix)

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

night (intensity, multiply)

Night effect

Name Type Description
intensity number

The intensity of the night effect.

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

polaroid (multiply)

Polaroid filter

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

predator (amount, multiply)

Predator effect

Erase the current matrix by setting a new indepent one

Name Type Description
amount number

how much the predator feels his future victim

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

Erase the current matrix by setting the default one

saturate (amount, multiply)

Set the saturation matrix, increase the separation between colors Increase saturation : increase contrast, brightness, and sharpness

Name Type Default Description
amount number 0

The saturation amount (0-1)

multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

sepia (multiply)

Sepia image

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

technicolor (multiply)

Color motion picture process invented in 1916 (thanks Dominic Szablewski)

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

toBGR (multiply)

Filter who transforms : Red -> Blue and Blue -> Red

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix

vintage (multiply)

Vintage filter (thanks Dominic Szablewski)

Name Type Description
multiply boolean

if true, current matrix and matrix are multiplied. If false, just set the current matrix with @param matrix