diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index 9ca25e5..d2e03b6 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -9,6 +9,7 @@ WebGLState = require('./WebGLState'), createContext = require('pixi-gl-core').createContext, mapWebGLDrawModesToPixi = require('./utils/mapWebGLDrawModesToPixi'), + validateContext = require('./utils/validateContext'), utils = require('../../utils'), glCore = require('pixi-gl-core'), CONST = require('../../const'); @@ -110,6 +111,12 @@ * @member {WebGLRenderingContext} */ // initialize the context so it is ready for the managers. + if(options.context) + { + // checks to see if a context is valid.. + validateContext(options.context); + } + this.gl = options.context || createContext(this.view, this._contextOptions); this.CONTEXT_UID = CONTEXT_UID++; diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index 9ca25e5..d2e03b6 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -9,6 +9,7 @@ WebGLState = require('./WebGLState'), createContext = require('pixi-gl-core').createContext, mapWebGLDrawModesToPixi = require('./utils/mapWebGLDrawModesToPixi'), + validateContext = require('./utils/validateContext'), utils = require('../../utils'), glCore = require('pixi-gl-core'), CONST = require('../../const'); @@ -110,6 +111,12 @@ * @member {WebGLRenderingContext} */ // initialize the context so it is ready for the managers. + if(options.context) + { + // checks to see if a context is valid.. + validateContext(options.context); + } + this.gl = options.context || createContext(this.view, this._contextOptions); this.CONTEXT_UID = CONTEXT_UID++; diff --git a/src/core/renderers/webgl/utils/validateContext.js b/src/core/renderers/webgl/utils/validateContext.js new file mode 100644 index 0000000..11a92eb --- /dev/null +++ b/src/core/renderers/webgl/utils/validateContext.js @@ -0,0 +1,14 @@ + + +function validateContext(gl) +{ + var attributes = gl.getContextAttributes(); + + // this is going to be fairly simple for now.. but at least we have rom to grow! + if(!attributes.stencil) + { + console.warn("Provided WebGL context does not have a stencil buffer, masks may not correctly") + } +} + +module.exports = validateContext;