Skip to content

Screen Filters (Effects)

Eric Mor edited this page Aug 9, 2019 · 1 revision

This is a list of all filters that can be used in the filterChain block of a screen effect. Multiple filters can be combined to create a post-processing screen filter.

In this documentation we refer to a special type, buffer. A buffer is a temporary texture used in screen filters; all filters take two arguments: the source buffer where the information is taken from, and the destination buffer where the result of applying the filter will be written.

When a buffer type is required, these values are possible:

  • The name of a temporary buffer that has been declared in the filter chain with texture. For more info, check the Screen Effects page.

  • particlesX, where X is a number. For example, particles0

  • For the source buffer and any buffers used in filter options (as they are sources as well), source. This is the base image where the screen effect is being applied; that is, what would be displayed on the screen without post-processing.

  • For the source buffer, the resourceID of a texture.

  • For the destination buffer, dest. This is the final buffer that will be displayed on the screen.

  • For the destination buffer, an integer number, 0, 1, etc. This is untested, but it is probably the render target index.

An example:

filterChain
    texture temp0 -size 512
    # Blur a source texture and save it on temp0
    blur1d textures!test_texture temp0 -scale 2.5
    # Add the blurred texture into the screen and display it
    add source dest -texture temp0
end

Available filters

distort <buffer: source> <buffer: dest> -distorter <buffer> -offsetX <float> -offsetY <float> -strength <float> -transXY <vector2> -tileXY <vector2>


blur1d <buffer: source> <buffer: dest> -scale <float> -scaleX <float> -scaleY <float>


copy <buffer: source> <buffer: dest> -pointSource -blend -add -multiply -sourceAlpha <float> -sourceColor <colorRGB> -maskTexture <buffer> -maskChannel <float> -tileXY <vector2> -param9 -offsetXY <vector2>


compress <buffer: source> <buffer: dest> -bias <float> -scale <float> -mono


add <buffer: source> <buffer: dest> -texture <buffer> -pointSource -pointAdd -sourceMul <float> -addMul <float> -tileXY <vector2> -maskTexture <buffer> -param7 <float> -param8


colorize <buffer: source> <buffer: dest> -color <colorRGB> -strength <float> -param2 <buffer> -param3


blurx <buffer: source> <buffer: dest> -scale <float>

Applies a blur filter only in the horizontal direction.


blury <buffer: source> <buffer: dest> -scale <float>

Applies a blur filter only in the vertical direction.


edge <buffer: source> <buffer: dest> -normalMap -scale <float> -param2 -param3 <vector3> -param4 <vector4> -param5 <float>


edgex <buffer: source> <buffer: dest>


edgey <buffer: source> <buffer: dest>


extract <buffer: source> <buffer: dest> -color <colorRGB>


multiply <buffer: source> <buffer: dest> -texture <buffer> -sourceMul <float> -param2 <float> -tileXY <vector2> -replace -offsetXY <vector2> -param7 <float> -param8 <float>


dilate <buffer: source> <buffer: dest>


contrast <buffer: source> <buffer: dest> -upper <float> -lower <float>


customMaterial <buffer: source> <buffer: dest> -materialID <resourceID> -sampler0 <buffer> -sampler1 <buffer> -sampler2 <buffer> -sampler3 <buffer> -customParams0 <float> -customParams1 <float> -customParams2 <float> -customParams3 <float> -customParams4 <float> -customParams5 <float> -customParams6 <float> -customParams7 <float> -param13 -maxDistance <float> -param15 -param16 -param17

Used to apply a custom shader. The -samplerX properties will be textures passed to the shader; the customParamsX will be custom parameters that can be retrieved in the shader with the customParams shader data variable.


strengthFader <buffer: source> <buffer: dest> -length <float> -fadeIn -fadeOut -texture <buffer>

Clone this wiki locally