Class DisplacementFilter

The DisplacementFilter class uses the pixel values from the specified texture (called the displacement map) to perform a displacement of an object.

You can use this filter to apply all manor of crazy warping effects. Currently the r property of the texture is used to offset the x and the g property of the texture is used to offset the y.

The way it works is it uses the values of the displacement map to look up the correct pixels to output. This means it's not technically moving the original. Instead, it's starting at the output and asking "which pixel from the original goes here". For example, if a displacement map pixel has red = 1 and the filter scale is 20, this filter will output the pixel approximately 20 pixels to the right of the original.

Memberof

PIXI

Hierarchy (view full)

Constructors

Properties

autoFit: boolean

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

Default

true
disposeRunner: Runner<any, any[]>
enabled: boolean

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

legacy: boolean

Legacy filters use position and uvs from attributes (set by filter system)

maskMatrix: Matrix
maskSprite: ISpriteMaskTarget
multisample: null | MSAA_QUALITY

The samples override of the filter instance. If set to null, the sample count of the current render target is used.

Default

PIXI.Filter.defaultMultisample
padding: number

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.

program: Program

Program that the shader uses.

scale: Point
state: State

The WebGL state the filter requires to render.

uniformGroup: UniformGroup<Dict<any>>
SOURCE_KEY_MAP: Dict<string>

Used for caching shader IDs.

defaultMultisample: null | MSAA_QUALITY

Default filter samples for any filter.

Static

Default

PIXI.MSAA_QUALITY.NONE
defaultResolution: null | number

Default filter resolution for any filter.

Static

Accessors

  • get blendMode(): BLEND_MODES
  • Sets the blend mode of the filter.

    Returns BLEND_MODES

    Default

    PIXI.BLEND_MODES.NORMAL
    
  • set blendMode(value): void
  • Parameters

    Returns void

  • get map(): Texture<Resource>
  • The texture used for the displacement map. Must be power of 2 sized texture.

    Returns Texture<Resource>

  • set map(value): void
  • Parameters

    Returns void

  • get resolution(): null | number
  • The resolution of the filter. Setting this to be lower will lower the quality but increase the performance of the filter. If set to null or 0, the resolution of the current render target is used.

    Returns null | number

    Default

    PIXI.Filter.defaultResolution
    
  • set resolution(value): void
  • Parameters

    • value: null | number

    Returns void

  • get uniforms(): Dict<any>
  • Shader uniform values, shortcut for uniformGroup.uniforms.

    Returns Dict<any>

  • get defaultFragmentSrc(): string
  • The default fragment shader source

    Returns string

  • get defaultVertexSrc(): string
  • The default vertex shader source

    Returns string

Methods

  • Applies the filter.

    Parameters

    Returns void

  • Parameters

    Returns boolean

  • Returns void

  • A short hand function to create a shader based of a vertex and fragment shader.

    Parameters

    • Optional vertexSrc: string

      The source of the vertex shader.

    • Optional fragmentSrc: string

      The source of the fragment shader.

    • Optional uniforms: Dict<any>

      Custom uniforms to use to augment the built-in ones.

    Returns Shader

    A shiny new PixiJS shader!

Generated using TypeDoc