diff --git a/src/core/graphics/webgl/ComplexPrimitiveShader.js b/src/core/graphics/webgl/ComplexPrimitiveShader.js new file mode 100644 index 0000000..656c5fd --- /dev/null +++ b/src/core/graphics/webgl/ComplexPrimitiveShader.js @@ -0,0 +1,56 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function ComplexPrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform vec3 tint;', + 'uniform float alpha;', + 'uniform vec3 color;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + color: { type: '3f', value: [0,0,0] }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + } + ); +} + +ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); +ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; +module.exports = ComplexPrimitiveShader; + +WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/ComplexPrimitiveShader.js b/src/core/graphics/webgl/ComplexPrimitiveShader.js new file mode 100644 index 0000000..656c5fd --- /dev/null +++ b/src/core/graphics/webgl/ComplexPrimitiveShader.js @@ -0,0 +1,56 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function ComplexPrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform vec3 tint;', + 'uniform float alpha;', + 'uniform vec3 color;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + color: { type: '3f', value: [0,0,0] }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + } + ); +} + +ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); +ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; +module.exports = ComplexPrimitiveShader; + +WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/PrimitiveShader.js b/src/core/graphics/webgl/PrimitiveShader.js new file mode 100644 index 0000000..f75a226 --- /dev/null +++ b/src/core/graphics/webgl/PrimitiveShader.js @@ -0,0 +1,58 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function PrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + 'attribute vec4 aColor;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform float alpha;', + 'uniform float flipY;', + 'uniform vec3 tint;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = aColor * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + alpha: { type: '1f', value: 0 }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + }, + { + aColor:0 + } + ); +} + +PrimitiveShader.prototype = Object.create(Shader.prototype); +PrimitiveShader.prototype.constructor = PrimitiveShader; +module.exports = PrimitiveShader; + +WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/graphics/webgl/ComplexPrimitiveShader.js b/src/core/graphics/webgl/ComplexPrimitiveShader.js new file mode 100644 index 0000000..656c5fd --- /dev/null +++ b/src/core/graphics/webgl/ComplexPrimitiveShader.js @@ -0,0 +1,56 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function ComplexPrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform vec3 tint;', + 'uniform float alpha;', + 'uniform vec3 color;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + color: { type: '3f', value: [0,0,0] }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + } + ); +} + +ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); +ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; +module.exports = ComplexPrimitiveShader; + +WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/PrimitiveShader.js b/src/core/graphics/webgl/PrimitiveShader.js new file mode 100644 index 0000000..f75a226 --- /dev/null +++ b/src/core/graphics/webgl/PrimitiveShader.js @@ -0,0 +1,58 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function PrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + 'attribute vec4 aColor;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform float alpha;', + 'uniform float flipY;', + 'uniform vec3 tint;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = aColor * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + alpha: { type: '1f', value: 0 }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + }, + { + aColor:0 + } + ); +} + +PrimitiveShader.prototype = Object.create(Shader.prototype); +PrimitiveShader.prototype.constructor = PrimitiveShader; +module.exports = PrimitiveShader; + +WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js deleted file mode 100644 index 656c5fd..0000000 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ /dev/null @@ -1,56 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function ComplexPrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform vec3 tint;', - 'uniform float alpha;', - 'uniform vec3 color;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - flipY: { type: '1f', value: 0 }, - alpha: { type: '1f', value: 0 }, - color: { type: '3f', value: [0,0,0] }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - } - ); -} - -ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); -ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; -module.exports = ComplexPrimitiveShader; - -WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/ComplexPrimitiveShader.js b/src/core/graphics/webgl/ComplexPrimitiveShader.js new file mode 100644 index 0000000..656c5fd --- /dev/null +++ b/src/core/graphics/webgl/ComplexPrimitiveShader.js @@ -0,0 +1,56 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function ComplexPrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform vec3 tint;', + 'uniform float alpha;', + 'uniform vec3 color;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + color: { type: '3f', value: [0,0,0] }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + } + ); +} + +ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); +ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; +module.exports = ComplexPrimitiveShader; + +WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/PrimitiveShader.js b/src/core/graphics/webgl/PrimitiveShader.js new file mode 100644 index 0000000..f75a226 --- /dev/null +++ b/src/core/graphics/webgl/PrimitiveShader.js @@ -0,0 +1,58 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function PrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + 'attribute vec4 aColor;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform float alpha;', + 'uniform float flipY;', + 'uniform vec3 tint;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = aColor * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + alpha: { type: '1f', value: 0 }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + }, + { + aColor:0 + } + ); +} + +PrimitiveShader.prototype = Object.create(Shader.prototype); +PrimitiveShader.prototype.constructor = PrimitiveShader; +module.exports = PrimitiveShader; + +WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js deleted file mode 100644 index 656c5fd..0000000 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ /dev/null @@ -1,56 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function ComplexPrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform vec3 tint;', - 'uniform float alpha;', - 'uniform vec3 color;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - flipY: { type: '1f', value: 0 }, - alpha: { type: '1f', value: 0 }, - color: { type: '3f', value: [0,0,0] }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - } - ); -} - -ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); -ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; -module.exports = ComplexPrimitiveShader; - -WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js deleted file mode 100644 index f75a226..0000000 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ /dev/null @@ -1,58 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function PrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - 'attribute vec4 aColor;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform float alpha;', - 'uniform float flipY;', - 'uniform vec3 tint;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = aColor * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - alpha: { type: '1f', value: 0 }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - }, - { - aColor:0 - } - ); -} - -PrimitiveShader.prototype = Object.create(Shader.prototype); -PrimitiveShader.prototype.constructor = PrimitiveShader; -module.exports = PrimitiveShader; - -WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/graphics/webgl/ComplexPrimitiveShader.js b/src/core/graphics/webgl/ComplexPrimitiveShader.js new file mode 100644 index 0000000..656c5fd --- /dev/null +++ b/src/core/graphics/webgl/ComplexPrimitiveShader.js @@ -0,0 +1,56 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function ComplexPrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform vec3 tint;', + 'uniform float alpha;', + 'uniform vec3 color;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + color: { type: '3f', value: [0,0,0] }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + } + ); +} + +ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); +ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; +module.exports = ComplexPrimitiveShader; + +WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/PrimitiveShader.js b/src/core/graphics/webgl/PrimitiveShader.js new file mode 100644 index 0000000..f75a226 --- /dev/null +++ b/src/core/graphics/webgl/PrimitiveShader.js @@ -0,0 +1,58 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function PrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + 'attribute vec4 aColor;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform float alpha;', + 'uniform float flipY;', + 'uniform vec3 tint;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = aColor * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + alpha: { type: '1f', value: 0 }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + }, + { + aColor:0 + } + ); +} + +PrimitiveShader.prototype = Object.create(Shader.prototype); +PrimitiveShader.prototype.constructor = PrimitiveShader; +module.exports = PrimitiveShader; + +WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js deleted file mode 100644 index 656c5fd..0000000 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ /dev/null @@ -1,56 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function ComplexPrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform vec3 tint;', - 'uniform float alpha;', - 'uniform vec3 color;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - flipY: { type: '1f', value: 0 }, - alpha: { type: '1f', value: 0 }, - color: { type: '3f', value: [0,0,0] }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - } - ); -} - -ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); -ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; -module.exports = ComplexPrimitiveShader; - -WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js deleted file mode 100644 index f75a226..0000000 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ /dev/null @@ -1,58 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function PrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - 'attribute vec4 aColor;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform float alpha;', - 'uniform float flipY;', - 'uniform vec3 tint;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = aColor * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - alpha: { type: '1f', value: 0 }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - }, - { - aColor:0 - } - ); -} - -PrimitiveShader.prototype = Object.create(Shader.prototype); -PrimitiveShader.prototype.constructor = PrimitiveShader; -module.exports = PrimitiveShader; - -WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/SpriteShader.js b/src/core/renderers/webgl/shaders/SpriteShader.js deleted file mode 100644 index 8532a96..0000000 --- a/src/core/renderers/webgl/shaders/SpriteShader.js +++ /dev/null @@ -1,45 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function SpriteShader(shaderManager) -{ - Shader.call(this, - shaderManager, - null, - // fragment shader - [ - 'precision lowp float;', - - 'varying vec2 vTextureCoord;', - 'varying vec4 vColor;', - - 'uniform sampler2D uSampler;', - - 'void main(void){', - ' gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor ;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - flipY: { type: '1f', value: 0 }, - alpha: { type: '1f', value: 0 }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - }, - { - aTextureCoord: 0, - aColor: 0 - } - ); -} - -SpriteShader.prototype = Object.create(Shader.prototype); -SpriteShader.prototype.constructor = SpriteShader; -module.exports = SpriteShader; - -WebGLShaderManager.registerPlugin('fastShader', SpriteShader); diff --git a/src/core/graphics/webgl/ComplexPrimitiveShader.js b/src/core/graphics/webgl/ComplexPrimitiveShader.js new file mode 100644 index 0000000..656c5fd --- /dev/null +++ b/src/core/graphics/webgl/ComplexPrimitiveShader.js @@ -0,0 +1,56 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function ComplexPrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform vec3 tint;', + 'uniform float alpha;', + 'uniform vec3 color;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + color: { type: '3f', value: [0,0,0] }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + } + ); +} + +ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); +ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; +module.exports = ComplexPrimitiveShader; + +WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/graphics/webgl/PrimitiveShader.js b/src/core/graphics/webgl/PrimitiveShader.js new file mode 100644 index 0000000..f75a226 --- /dev/null +++ b/src/core/graphics/webgl/PrimitiveShader.js @@ -0,0 +1,58 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function PrimitiveShader(shaderManager) +{ + Shader.call(this, + shaderManager, + // vertex shader + [ + 'attribute vec2 aVertexPosition;', + 'attribute vec4 aColor;', + + 'uniform mat3 translationMatrix;', + 'uniform mat3 projectionMatrix;', + + 'uniform float alpha;', + 'uniform float flipY;', + 'uniform vec3 tint;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', + ' vColor = aColor * vec4(tint * alpha, alpha);', + '}' + ].join('\n'), + // fragment shader + [ + 'precision mediump float;', + + 'varying vec4 vColor;', + + 'void main(void){', + ' gl_FragColor = vColor;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + alpha: { type: '1f', value: 0 }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + }, + { + aColor:0 + } + ); +} + +PrimitiveShader.prototype = Object.create(Shader.prototype); +PrimitiveShader.prototype.constructor = PrimitiveShader; +module.exports = PrimitiveShader; + +WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js deleted file mode 100644 index 656c5fd..0000000 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ /dev/null @@ -1,56 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function ComplexPrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform vec3 tint;', - 'uniform float alpha;', - 'uniform vec3 color;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = vec4(color * alpha * tint, alpha);',//" * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - flipY: { type: '1f', value: 0 }, - alpha: { type: '1f', value: 0 }, - color: { type: '3f', value: [0,0,0] }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - } - ); -} - -ComplexPrimitiveShader.prototype = Object.create(Shader.prototype); -ComplexPrimitiveShader.prototype.constructor = ComplexPrimitiveShader; -module.exports = ComplexPrimitiveShader; - -WebGLShaderManager.registerPlugin('complexPrimitiveShader', ComplexPrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js deleted file mode 100644 index f75a226..0000000 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ /dev/null @@ -1,58 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function PrimitiveShader(shaderManager) -{ - Shader.call(this, - shaderManager, - // vertex shader - [ - 'attribute vec2 aVertexPosition;', - 'attribute vec4 aColor;', - - 'uniform mat3 translationMatrix;', - 'uniform mat3 projectionMatrix;', - - 'uniform float alpha;', - 'uniform float flipY;', - 'uniform vec3 tint;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);', - ' vColor = aColor * vec4(tint * alpha, alpha);', - '}' - ].join('\n'), - // fragment shader - [ - 'precision mediump float;', - - 'varying vec4 vColor;', - - 'void main(void){', - ' gl_FragColor = vColor;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - alpha: { type: '1f', value: 0 }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - }, - { - aColor:0 - } - ); -} - -PrimitiveShader.prototype = Object.create(Shader.prototype); -PrimitiveShader.prototype.constructor = PrimitiveShader; -module.exports = PrimitiveShader; - -WebGLShaderManager.registerPlugin('primitiveShader', PrimitiveShader); diff --git a/src/core/renderers/webgl/shaders/SpriteShader.js b/src/core/renderers/webgl/shaders/SpriteShader.js deleted file mode 100644 index 8532a96..0000000 --- a/src/core/renderers/webgl/shaders/SpriteShader.js +++ /dev/null @@ -1,45 +0,0 @@ -var Shader = require('./Shader'), - WebGLShaderManager = require('../managers/WebGLShaderManager'); - -/** - * @class - * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. - */ -function SpriteShader(shaderManager) -{ - Shader.call(this, - shaderManager, - null, - // fragment shader - [ - 'precision lowp float;', - - 'varying vec2 vTextureCoord;', - 'varying vec4 vColor;', - - 'uniform sampler2D uSampler;', - - 'void main(void){', - ' gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor ;', - '}' - ].join('\n'), - // custom uniforms - { - tint: { type: '3f', value: [0, 0, 0] }, - flipY: { type: '1f', value: 0 }, - alpha: { type: '1f', value: 0 }, - translationMatrix: { type: 'mat3', value: new Float32Array(9) } - }, - { - aTextureCoord: 0, - aColor: 0 - } - ); -} - -SpriteShader.prototype = Object.create(Shader.prototype); -SpriteShader.prototype.constructor = SpriteShader; -module.exports = SpriteShader; - -WebGLShaderManager.registerPlugin('fastShader', SpriteShader); diff --git a/src/core/sprites/webgl/SpriteShader.js b/src/core/sprites/webgl/SpriteShader.js new file mode 100644 index 0000000..8532a96 --- /dev/null +++ b/src/core/sprites/webgl/SpriteShader.js @@ -0,0 +1,45 @@ +var Shader = require('./Shader'), + WebGLShaderManager = require('../managers/WebGLShaderManager'); + +/** + * @class + * @namespace PIXI + * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + */ +function SpriteShader(shaderManager) +{ + Shader.call(this, + shaderManager, + null, + // fragment shader + [ + 'precision lowp float;', + + 'varying vec2 vTextureCoord;', + 'varying vec4 vColor;', + + 'uniform sampler2D uSampler;', + + 'void main(void){', + ' gl_FragColor = texture2D(uSampler, vTextureCoord) * vColor ;', + '}' + ].join('\n'), + // custom uniforms + { + tint: { type: '3f', value: [0, 0, 0] }, + flipY: { type: '1f', value: 0 }, + alpha: { type: '1f', value: 0 }, + translationMatrix: { type: 'mat3', value: new Float32Array(9) } + }, + { + aTextureCoord: 0, + aColor: 0 + } + ); +} + +SpriteShader.prototype = Object.create(Shader.prototype); +SpriteShader.prototype.constructor = SpriteShader; +module.exports = SpriteShader; + +WebGLShaderManager.registerPlugin('fastShader', SpriteShader);