Source: gfx/core/renderers/webgl/filters/FXAAFilter.js

var AbstractFilter = require('./AbstractFilter');


/**
 *
 * Basic FXAA implementation based on the code on geeks3d.com with the
 * modification that the texture2DLod stuff was removed since it's
 * unsupported by WebGL.
 *
 * --
 * From:
 * https://github.com/mitsuhiko/webgl-meincraft
 *
 * @class
 * @extends AbstractFilter
 *
 */
function FXAAFilter() {
  AbstractFilter.call(this,
        // vertex shader
        require('./FXAA.vert'),
        // fragme.t shader
        require('./FXAA.frag'),
        // uniforms
    {
      resolution: { type: 'v2', value: { x: 1, y: 1 } },
    }
    );

}

FXAAFilter.prototype = Object.create(AbstractFilter.prototype);
FXAAFilter.prototype.constructor = FXAAFilter;
module.exports = FXAAFilter;

/**
 * Applies the filter
 *
 * @param renderer {PIXI.WebGLRenderer} The renderer to retrieve the filter from
 * @param input {PIXI.RenderTarget}
 * @param output {PIXI.RenderTarget}
 */
FXAAFilter.prototype.applyFilter = function(renderer, input, output) {
  var filterManager = renderer.filterManager;

  var shader = this.getShader(renderer);
     // draw the filter...
  filterManager.applyFilter(shader, input, output);
};