diff --git a/src/filters/FXAA/FXAAFilter.js b/src/filters/FXAA/FXAAFilter.js index 6d5646c..4d7aaff 100644 --- a/src/filters/FXAA/FXAAFilter.js +++ b/src/filters/FXAA/FXAAFilter.js @@ -13,7 +13,7 @@ * https://github.com/mitsuhiko/webgl-meincraft * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI * */ diff --git a/src/filters/FXAA/FXAAFilter.js b/src/filters/FXAA/FXAAFilter.js index 6d5646c..4d7aaff 100644 --- a/src/filters/FXAA/FXAAFilter.js +++ b/src/filters/FXAA/FXAAFilter.js @@ -13,7 +13,7 @@ * https://github.com/mitsuhiko/webgl-meincraft * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI * */ diff --git a/src/filters/gray/GrayFilter.js b/src/filters/gray/GrayFilter.js index e78411f..af51b3e 100644 --- a/src/filters/gray/GrayFilter.js +++ b/src/filters/gray/GrayFilter.js @@ -6,7 +6,7 @@ * This greyscales the palette of your Display Objects. * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI.filters */ function GrayFilter() @@ -19,7 +19,7 @@ ); this.uniforms.gray = 1; - + this.glShaderKey = 'gray'; } diff --git a/src/filters/FXAA/FXAAFilter.js b/src/filters/FXAA/FXAAFilter.js index 6d5646c..4d7aaff 100644 --- a/src/filters/FXAA/FXAAFilter.js +++ b/src/filters/FXAA/FXAAFilter.js @@ -13,7 +13,7 @@ * https://github.com/mitsuhiko/webgl-meincraft * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI * */ diff --git a/src/filters/gray/GrayFilter.js b/src/filters/gray/GrayFilter.js index e78411f..af51b3e 100644 --- a/src/filters/gray/GrayFilter.js +++ b/src/filters/gray/GrayFilter.js @@ -6,7 +6,7 @@ * This greyscales the palette of your Display Objects. * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI.filters */ function GrayFilter() @@ -19,7 +19,7 @@ ); this.uniforms.gray = 1; - + this.glShaderKey = 'gray'; } diff --git a/src/filters/index.js b/src/filters/index.js index 85acd33..d701906 100644 --- a/src/filters/index.js +++ b/src/filters/index.js @@ -31,9 +31,10 @@ BlurFilter: require('./blur/BlurFilter'), BlurXFilter: require('./blur/BlurXFilter'), BlurYFilter: require('./blur/BlurYFilter'), - + ColorMatrixFilter: require('./colormatrix/ColorMatrixFilter'), TwistFilter: require('./twist/TwistFilter'), GrayFilter: require('./gray/GrayFilter'), - GodrayFilter: require('./godray/GodrayFilter') + GodrayFilter: require('./godray/GodrayFilter'), + VoidFilter: require('./void/VoidFilter') }; diff --git a/src/filters/FXAA/FXAAFilter.js b/src/filters/FXAA/FXAAFilter.js index 6d5646c..4d7aaff 100644 --- a/src/filters/FXAA/FXAAFilter.js +++ b/src/filters/FXAA/FXAAFilter.js @@ -13,7 +13,7 @@ * https://github.com/mitsuhiko/webgl-meincraft * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI * */ diff --git a/src/filters/gray/GrayFilter.js b/src/filters/gray/GrayFilter.js index e78411f..af51b3e 100644 --- a/src/filters/gray/GrayFilter.js +++ b/src/filters/gray/GrayFilter.js @@ -6,7 +6,7 @@ * This greyscales the palette of your Display Objects. * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI.filters */ function GrayFilter() @@ -19,7 +19,7 @@ ); this.uniforms.gray = 1; - + this.glShaderKey = 'gray'; } diff --git a/src/filters/index.js b/src/filters/index.js index 85acd33..d701906 100644 --- a/src/filters/index.js +++ b/src/filters/index.js @@ -31,9 +31,10 @@ BlurFilter: require('./blur/BlurFilter'), BlurXFilter: require('./blur/BlurXFilter'), BlurYFilter: require('./blur/BlurYFilter'), - + ColorMatrixFilter: require('./colormatrix/ColorMatrixFilter'), TwistFilter: require('./twist/TwistFilter'), GrayFilter: require('./gray/GrayFilter'), - GodrayFilter: require('./godray/GodrayFilter') + GodrayFilter: require('./godray/GodrayFilter'), + VoidFilter: require('./void/VoidFilter') }; diff --git a/src/filters/void/VoidFilter.js b/src/filters/void/VoidFilter.js new file mode 100644 index 0000000..6d49849 --- /dev/null +++ b/src/filters/void/VoidFilter.js @@ -0,0 +1,26 @@ +var core = require('../../core'); +// @see https://github.com/substack/brfs/issues/25 +var glslify = require('glslify'); + +/** + * Does nothing. Very handy. + * + * @class + * @extends PIXI.Filter + * @memberof PIXI.filters + */ +function VoidFilter() +{ + core.Filter.call(this, + // vertex shader + glslify('./void.vert', 'utf8'), + // fragment shader + glslify('./void.frag', 'utf8') + ); + + this.glShaderKey = 'void'; +} + +VoidFilter.prototype = Object.create(core.Filter.prototype); +VoidFilter.prototype.constructor = VoidFilter; +module.exports = VoidFilter; diff --git a/src/filters/FXAA/FXAAFilter.js b/src/filters/FXAA/FXAAFilter.js index 6d5646c..4d7aaff 100644 --- a/src/filters/FXAA/FXAAFilter.js +++ b/src/filters/FXAA/FXAAFilter.js @@ -13,7 +13,7 @@ * https://github.com/mitsuhiko/webgl-meincraft * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI * */ diff --git a/src/filters/gray/GrayFilter.js b/src/filters/gray/GrayFilter.js index e78411f..af51b3e 100644 --- a/src/filters/gray/GrayFilter.js +++ b/src/filters/gray/GrayFilter.js @@ -6,7 +6,7 @@ * This greyscales the palette of your Display Objects. * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI.filters */ function GrayFilter() @@ -19,7 +19,7 @@ ); this.uniforms.gray = 1; - + this.glShaderKey = 'gray'; } diff --git a/src/filters/index.js b/src/filters/index.js index 85acd33..d701906 100644 --- a/src/filters/index.js +++ b/src/filters/index.js @@ -31,9 +31,10 @@ BlurFilter: require('./blur/BlurFilter'), BlurXFilter: require('./blur/BlurXFilter'), BlurYFilter: require('./blur/BlurYFilter'), - + ColorMatrixFilter: require('./colormatrix/ColorMatrixFilter'), TwistFilter: require('./twist/TwistFilter'), GrayFilter: require('./gray/GrayFilter'), - GodrayFilter: require('./godray/GodrayFilter') + GodrayFilter: require('./godray/GodrayFilter'), + VoidFilter: require('./void/VoidFilter') }; diff --git a/src/filters/void/VoidFilter.js b/src/filters/void/VoidFilter.js new file mode 100644 index 0000000..6d49849 --- /dev/null +++ b/src/filters/void/VoidFilter.js @@ -0,0 +1,26 @@ +var core = require('../../core'); +// @see https://github.com/substack/brfs/issues/25 +var glslify = require('glslify'); + +/** + * Does nothing. Very handy. + * + * @class + * @extends PIXI.Filter + * @memberof PIXI.filters + */ +function VoidFilter() +{ + core.Filter.call(this, + // vertex shader + glslify('./void.vert', 'utf8'), + // fragment shader + glslify('./void.frag', 'utf8') + ); + + this.glShaderKey = 'void'; +} + +VoidFilter.prototype = Object.create(core.Filter.prototype); +VoidFilter.prototype.constructor = VoidFilter; +module.exports = VoidFilter; diff --git a/src/filters/void/void.frag b/src/filters/void/void.frag new file mode 100644 index 0000000..99168fb --- /dev/null +++ b/src/filters/void/void.frag @@ -0,0 +1,8 @@ +varying vec2 vTextureCoord; + +uniform sampler2D uSampler; + +void main(void) +{ + gl_FragColor = texture2D(uSampler, vTextureCoord); +} diff --git a/src/filters/FXAA/FXAAFilter.js b/src/filters/FXAA/FXAAFilter.js index 6d5646c..4d7aaff 100644 --- a/src/filters/FXAA/FXAAFilter.js +++ b/src/filters/FXAA/FXAAFilter.js @@ -13,7 +13,7 @@ * https://github.com/mitsuhiko/webgl-meincraft * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI * */ diff --git a/src/filters/gray/GrayFilter.js b/src/filters/gray/GrayFilter.js index e78411f..af51b3e 100644 --- a/src/filters/gray/GrayFilter.js +++ b/src/filters/gray/GrayFilter.js @@ -6,7 +6,7 @@ * This greyscales the palette of your Display Objects. * * @class - * @extends PIXI.AbstractFilter + * @extends PIXI.Filter * @memberof PIXI.filters */ function GrayFilter() @@ -19,7 +19,7 @@ ); this.uniforms.gray = 1; - + this.glShaderKey = 'gray'; } diff --git a/src/filters/index.js b/src/filters/index.js index 85acd33..d701906 100644 --- a/src/filters/index.js +++ b/src/filters/index.js @@ -31,9 +31,10 @@ BlurFilter: require('./blur/BlurFilter'), BlurXFilter: require('./blur/BlurXFilter'), BlurYFilter: require('./blur/BlurYFilter'), - + ColorMatrixFilter: require('./colormatrix/ColorMatrixFilter'), TwistFilter: require('./twist/TwistFilter'), GrayFilter: require('./gray/GrayFilter'), - GodrayFilter: require('./godray/GodrayFilter') + GodrayFilter: require('./godray/GodrayFilter'), + VoidFilter: require('./void/VoidFilter') }; diff --git a/src/filters/void/VoidFilter.js b/src/filters/void/VoidFilter.js new file mode 100644 index 0000000..6d49849 --- /dev/null +++ b/src/filters/void/VoidFilter.js @@ -0,0 +1,26 @@ +var core = require('../../core'); +// @see https://github.com/substack/brfs/issues/25 +var glslify = require('glslify'); + +/** + * Does nothing. Very handy. + * + * @class + * @extends PIXI.Filter + * @memberof PIXI.filters + */ +function VoidFilter() +{ + core.Filter.call(this, + // vertex shader + glslify('./void.vert', 'utf8'), + // fragment shader + glslify('./void.frag', 'utf8') + ); + + this.glShaderKey = 'void'; +} + +VoidFilter.prototype = Object.create(core.Filter.prototype); +VoidFilter.prototype.constructor = VoidFilter; +module.exports = VoidFilter; diff --git a/src/filters/void/void.frag b/src/filters/void/void.frag new file mode 100644 index 0000000..99168fb --- /dev/null +++ b/src/filters/void/void.frag @@ -0,0 +1,8 @@ +varying vec2 vTextureCoord; + +uniform sampler2D uSampler; + +void main(void) +{ + gl_FragColor = texture2D(uSampler, vTextureCoord); +} diff --git a/src/filters/void/void.vert b/src/filters/void/void.vert new file mode 100644 index 0000000..787220d --- /dev/null +++ b/src/filters/void/void.vert @@ -0,0 +1,10 @@ +attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; +varying vec2 vTextureCoord; + +void main(void){ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}