diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js index 6bb8b2e..e1fb45b 100644 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function ComplexPrimitiveShader(shaderManager) { diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js index 6bb8b2e..e1fb45b 100644 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function ComplexPrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js index cad38fd..89ce005 100644 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/PrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function PrimitiveShader(shaderManager) { diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js index 6bb8b2e..e1fb45b 100644 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function ComplexPrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js index cad38fd..89ce005 100644 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/PrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function PrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/Shader.js b/src/core/renderers/webgl/shaders/Shader.js index c2c7493..f44095b 100644 --- a/src/core/renderers/webgl/shaders/Shader.js +++ b/src/core/renderers/webgl/shaders/Shader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [uniforms] {object} Uniforms for this shader. diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js index 6bb8b2e..e1fb45b 100644 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function ComplexPrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js index cad38fd..89ce005 100644 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/PrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function PrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/Shader.js b/src/core/renderers/webgl/shaders/Shader.js index c2c7493..f44095b 100644 --- a/src/core/renderers/webgl/shaders/Shader.js +++ b/src/core/renderers/webgl/shaders/Shader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [uniforms] {object} Uniforms for this shader. diff --git a/src/core/renderers/webgl/shaders/TextureShader.js b/src/core/renderers/webgl/shaders/TextureShader.js index 0738d0e..9189434 100644 --- a/src/core/renderers/webgl/shaders/TextureShader.js +++ b/src/core/renderers/webgl/shaders/TextureShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [customUniforms] {object} Custom uniforms to use to augment the built-in ones. diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js index 6bb8b2e..e1fb45b 100644 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function ComplexPrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js index cad38fd..89ce005 100644 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/PrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function PrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/Shader.js b/src/core/renderers/webgl/shaders/Shader.js index c2c7493..f44095b 100644 --- a/src/core/renderers/webgl/shaders/Shader.js +++ b/src/core/renderers/webgl/shaders/Shader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [uniforms] {object} Uniforms for this shader. diff --git a/src/core/renderers/webgl/shaders/TextureShader.js b/src/core/renderers/webgl/shaders/TextureShader.js index 0738d0e..9189434 100644 --- a/src/core/renderers/webgl/shaders/TextureShader.js +++ b/src/core/renderers/webgl/shaders/TextureShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [customUniforms] {object} Custom uniforms to use to augment the built-in ones. diff --git a/src/core/sprites/webgl/SpriteBatchShader.js b/src/core/sprites/webgl/SpriteBatchShader.js index 1f53252..af28701 100644 --- a/src/core/sprites/webgl/SpriteBatchShader.js +++ b/src/core/sprites/webgl/SpriteBatchShader.js @@ -4,7 +4,7 @@ * @class * @extends Shader * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function SpriteBatchShader(shaderManager) { diff --git a/src/core/index.js b/src/core/index.js index 4fc777d..67b8d4e 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -44,7 +44,7 @@ // renderers - webgl WebGLRenderer: require('./renderers/webgl/WebGLRenderer'), - WebGLShaderManager: require('./renderers/webgl/managers/WebGLShaderManager'), + ShaderManager: require('./renderers/webgl/managers/ShaderManager'), Shader: require('./renderers/webgl/shaders/Shader'), /** diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index bf2c6a7..5a2fac1 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -1,4 +1,4 @@ -var WebGLShaderManager = require('./managers/WebGLShaderManager'), +var ShaderManager = require('./managers/ShaderManager'), MaskManager = require('./managers/MaskManager'), StencilManager = require('./managers/StencilManager'), FilterManager = require('./managers/FilterManager'), @@ -178,9 +178,9 @@ /** * Deals with managing the shader programs and their attribs - * @member {WebGLShaderManager} + * @member {ShaderManager} */ - this.shaderManager = new WebGLShaderManager(this); + this.shaderManager = new ShaderManager(this); /** * Manages the masks using the stencil buffer diff --git a/src/core/renderers/webgl/managers/ShaderManager.js b/src/core/renderers/webgl/managers/ShaderManager.js new file mode 100644 index 0000000..b01d537 --- /dev/null +++ b/src/core/renderers/webgl/managers/ShaderManager.js @@ -0,0 +1,148 @@ +var WebGLManager = require('./WebGLManager'), + TextureShader = require('../shaders/TextureShader'), + ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), + PrimitiveShader = require('../shaders/PrimitiveShader'), + utils = require('../../../utils'); + +/** + * @class + * @namespace PIXI + * @param renderer {WebGLRenderer} The renderer this manager works for. + */ +function ShaderManager(renderer) +{ + WebGLManager.call(this, renderer); + + /** + * @member {number} + */ + this.maxAttibs = 10; + + /** + * @member {any[]} + */ + this.attribState = []; + + /** + * @member {any[]} + */ + this.tempAttribState = []; + + for (var i = 0; i < this.maxAttibs; i++) + { + this.attribState[i] = false; + } + + /** + * @member {any[]} + */ + this.stack = []; + + /** + * @member {number} + * @private + */ + this._currentId = -1; + + /** + * @member {Shader} + * @private + */ + this.currentShader = null; + + this.initPlugins(); +} + +ShaderManager.prototype = Object.create(WebGLManager.prototype); +ShaderManager.prototype.constructor = ShaderManager; +utils.pluginTarget.mixin(ShaderManager); + +module.exports = ShaderManager; + +ShaderManager.prototype.onContextChange = function () +{ + this.initPlugins(); + + // TODO - Why are these not plugins? We can't decouple primitives unless they are.... + this.defaultShader = new TextureShader(this); + this.primitiveShader = new PrimitiveShader(this); + this.complexPrimitiveShader = new ComplexPrimitiveShader(this); +}; + +/** + * Takes the attributes given in parameters. + * + * @param attribs {Array} attribs + */ +ShaderManager.prototype.setAttribs = function (attribs) +{ + // reset temp state + var i; + + for (i = 0; i < this.tempAttribState.length; i++) + { + this.tempAttribState[i] = false; + } + + // set the new attribs + for (var a in attribs) + { + this.tempAttribState[attribs[a]] = true; + } + + var gl = this.renderer.gl; + + for (i = 0; i < this.attribState.length; i++) + { + if (this.attribState[i] !== this.tempAttribState[i]) + { + this.attribState[i] = this.tempAttribState[i]; + + if (this.attribState[i]) + { + gl.enableVertexAttribArray(i); + } + else + { + gl.disableVertexAttribArray(i); + } + } + } +}; + +/** + * Sets the current shader. + * + * @param shader {Any} + */ +ShaderManager.prototype.setShader = function (shader) +{ + if (this._currentId === shader.uuid) + { + return false; + } + + this._currentId = shader.uuid; + + this.currentShader = shader; + + this.renderer.gl.useProgram(shader.program); + this.setAttribs(shader.attributes); + + return true; +}; + +/** + * Destroys this object. + * + */ +ShaderManager.prototype.destroy = function () +{ + WebGLManager.prototype.destroy.call(this); + + this.destroyPlugins(); + + this.attribState = null; + + this.tempAttribState = null; +}; diff --git a/src/core/renderers/webgl/managers/WebGLShaderManager.js b/src/core/renderers/webgl/managers/WebGLShaderManager.js deleted file mode 100644 index b0d04ed..0000000 --- a/src/core/renderers/webgl/managers/WebGLShaderManager.js +++ /dev/null @@ -1,148 +0,0 @@ -var WebGLManager = require('./WebGLManager'), - TextureShader = require('../shaders/TextureShader'), - ComplexPrimitiveShader = require('../shaders/ComplexPrimitiveShader'), - PrimitiveShader = require('../shaders/PrimitiveShader'), - utils = require('../../../utils'); - -/** - * @class - * @namespace PIXI - * @param renderer {WebGLRenderer} The renderer this manager works for. - */ -function WebGLShaderManager(renderer) -{ - WebGLManager.call(this, renderer); - - /** - * @member {number} - */ - this.maxAttibs = 10; - - /** - * @member {any[]} - */ - this.attribState = []; - - /** - * @member {any[]} - */ - this.tempAttribState = []; - - for (var i = 0; i < this.maxAttibs; i++) - { - this.attribState[i] = false; - } - - /** - * @member {any[]} - */ - this.stack = []; - - /** - * @member {number} - * @private - */ - this._currentId = -1; - - /** - * @member {Shader} - * @private - */ - this.currentShader = null; - - this.initPlugins(); -} - -WebGLShaderManager.prototype = Object.create(WebGLManager.prototype); -WebGLShaderManager.prototype.constructor = WebGLShaderManager; -utils.pluginTarget.mixin(WebGLShaderManager); - -module.exports = WebGLShaderManager; - -WebGLShaderManager.prototype.onContextChange = function () -{ - this.initPlugins(); - - // TODO - Why are these not plugins? We can't decouple primitives unless they are.... - this.defaultShader = new TextureShader(this); - this.primitiveShader = new PrimitiveShader(this); - this.complexPrimitiveShader = new ComplexPrimitiveShader(this); -}; - -/** - * Takes the attributes given in parameters. - * - * @param attribs {Array} attribs - */ -WebGLShaderManager.prototype.setAttribs = function (attribs) -{ - // reset temp state - var i; - - for (i = 0; i < this.tempAttribState.length; i++) - { - this.tempAttribState[i] = false; - } - - // set the new attribs - for (var a in attribs) - { - this.tempAttribState[attribs[a]] = true; - } - - var gl = this.renderer.gl; - - for (i = 0; i < this.attribState.length; i++) - { - if (this.attribState[i] !== this.tempAttribState[i]) - { - this.attribState[i] = this.tempAttribState[i]; - - if (this.attribState[i]) - { - gl.enableVertexAttribArray(i); - } - else - { - gl.disableVertexAttribArray(i); - } - } - } -}; - -/** - * Sets the current shader. - * - * @param shader {Any} - */ -WebGLShaderManager.prototype.setShader = function (shader) -{ - if (this._currentId === shader.uuid) - { - return false; - } - - this._currentId = shader.uuid; - - this.currentShader = shader; - - this.renderer.gl.useProgram(shader.program); - this.setAttribs(shader.attributes); - - return true; -}; - -/** - * Destroys this object. - * - */ -WebGLShaderManager.prototype.destroy = function () -{ - WebGLManager.prototype.destroy.call(this); - - this.destroyPlugins(); - - this.attribState = null; - - this.tempAttribState = null; -}; diff --git a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js index 6bb8b2e..e1fb45b 100644 --- a/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/ComplexPrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function ComplexPrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/PrimitiveShader.js b/src/core/renderers/webgl/shaders/PrimitiveShader.js index cad38fd..89ce005 100644 --- a/src/core/renderers/webgl/shaders/PrimitiveShader.js +++ b/src/core/renderers/webgl/shaders/PrimitiveShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function PrimitiveShader(shaderManager) { diff --git a/src/core/renderers/webgl/shaders/Shader.js b/src/core/renderers/webgl/shaders/Shader.js index c2c7493..f44095b 100644 --- a/src/core/renderers/webgl/shaders/Shader.js +++ b/src/core/renderers/webgl/shaders/Shader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [uniforms] {object} Uniforms for this shader. diff --git a/src/core/renderers/webgl/shaders/TextureShader.js b/src/core/renderers/webgl/shaders/TextureShader.js index 0738d0e..9189434 100644 --- a/src/core/renderers/webgl/shaders/TextureShader.js +++ b/src/core/renderers/webgl/shaders/TextureShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. * @param [vertexSrc] {string} The source of the vertex shader. * @param [fragmentSrc] {string} The source of the fragment shader. * @param [customUniforms] {object} Custom uniforms to use to augment the built-in ones. diff --git a/src/core/sprites/webgl/SpriteBatchShader.js b/src/core/sprites/webgl/SpriteBatchShader.js index 1f53252..af28701 100644 --- a/src/core/sprites/webgl/SpriteBatchShader.js +++ b/src/core/sprites/webgl/SpriteBatchShader.js @@ -4,7 +4,7 @@ * @class * @extends Shader * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function SpriteBatchShader(shaderManager) { diff --git a/src/extras/StripShader.js b/src/extras/StripShader.js index c7b69b3..bb12757 100644 --- a/src/extras/StripShader.js +++ b/src/extras/StripShader.js @@ -3,7 +3,7 @@ /** * @class * @namespace PIXI - * @param shaderManager {WebGLShaderManager} The webgl shader manager this shader works for. + * @param shaderManager {ShaderManager} The webgl shader manager this shader works for. */ function StripShader(shaderManager) { @@ -53,4 +53,4 @@ StripShader.prototype.constructor = StripShader; module.exports = StripShader; -//core.WebGLShaderManager.registerPlugin('stripShader', StripShader); +//core.ShaderManager.registerPlugin('stripShader', StripShader);