var core = require('../../core'); var fs = require('fs'); // TODO (cengler) - The Y is flipped in this shader for some reason. /** * @author Vico @vicocotea * original shader : https://www.shadertoy.com/view/lssGDj by @movAX13h */ /** * An ASCII filter. * * @class * @extends AbstractFilter * @memberof PIXI.filters */ function AsciiFilter() { core.AbstractFilter.call(this, // vertex shader null, // fragment shader fs.readFileSync(__dirname + '/ascii.frag', 'utf8'), // custom uniforms { dimensions: { type: '4fv', value: new Float32Array([0, 0, 0, 0]) }, pixelSize: { type: '1f', value: 8 } } ); } AsciiFilter.prototype = Object.create(core.AbstractFilter.prototype); AsciiFilter.prototype.constructor = AsciiFilter; module.exports = AsciiFilter; Object.defineProperties(AsciiFilter.prototype, { /** * The pixel size used by the filter. * * @member {number} * @memberof AsciiFilter# */ size: { get: function () { return this.uniforms.pixelSize.value; }, set: function (value) { this.uniforms.pixelSize.value = value; } } });