diff --git a/src/gameobjects/container/ContainerWebGLRenderer.js b/src/gameobjects/container/ContainerWebGLRenderer.js index c90521b56..4f6b4c18a 100644 --- a/src/gameobjects/container/ContainerWebGLRenderer.js +++ b/src/gameobjects/container/ContainerWebGLRenderer.js @@ -122,7 +122,7 @@ var ContainerWebGLRenderer = function (renderer, container, drawingContext, pare child.setAlpha(childAlphaTopLeft * alpha, childAlphaTopRight * alpha, childAlphaBottomLeft * alpha, childAlphaBottomRight * alpha); // Render - child.renderWebGL(renderer, child, drawingContext, transformMatrix, container); + child.renderWebGL(renderer, child, currentContext, transformMatrix, container); // Restore original values @@ -133,6 +133,12 @@ var ContainerWebGLRenderer = function (renderer, container, drawingContext, pare // TODO: Child Mask handling (end) } + // Release any remaining context. + if (currentContext !== drawingContext) + { + currentContext.release(); + } + // TODO: Container PostFX handling }; diff --git a/src/gameobjects/layer/LayerWebGLRenderer.js b/src/gameobjects/layer/LayerWebGLRenderer.js index f0e8eea3b..f41672585 100644 --- a/src/gameobjects/layer/LayerWebGLRenderer.js +++ b/src/gameobjects/layer/LayerWebGLRenderer.js @@ -104,6 +104,7 @@ var LayerWebGLRenderer = function (renderer, layer, drawingContext) // TODO: Child Mask handling (end) } + // Release any remaining context. if (currentContext !== drawingContext) { currentContext.release();