From 16dc2c1597da5ff90bea7e47b68bff34a253d62c Mon Sep 17 00:00:00 2001 From: Georgios Kaleadis Date: Tue, 18 Feb 2014 11:26:10 +0100 Subject: [PATCH] patch for PixiPatch so render masks again --- src/PixiPatch.js | 45 +++++++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/src/PixiPatch.js b/src/PixiPatch.js index a71923ca..f13a43f2 100644 --- a/src/PixiPatch.js +++ b/src/PixiPatch.js @@ -134,27 +134,32 @@ PIXI.CanvasRenderer.prototype.renderDisplayObject = function(displayObject, rend } else if (displayObject instanceof PIXI.FilterBlock) { - if (displayObject.open) + if(displayObject.data instanceof PIXI.Graphics) { - this.context.save(); - - var cacheAlpha = displayObject.mask.alpha; - var maskTransform = displayObject.mask.worldTransform; - - this.context.setTransform(maskTransform[0], maskTransform[3], maskTransform[1], maskTransform[4], maskTransform[2], maskTransform[5]) - - displayObject.mask.worldAlpha = 0.5; - - this.context.worldAlpha = 0; - - PIXI.CanvasGraphics.renderGraphicsMask(displayObject.mask, this.context); - this.context.clip(); - - displayObject.mask.worldAlpha = cacheAlpha; - } - else - { - this.context.restore(); + var mask = displayObject.data; + + if(displayObject.open) + { + this.context.save(); + + var cacheAlpha = mask.alpha; + var maskTransform = mask.worldTransform; + + this.context.setTransform(maskTransform[0], maskTransform[3], maskTransform[1], maskTransform[4], maskTransform[2], maskTransform[5]); + + mask.worldAlpha = 0.5; + + this.context.worldAlpha = 0; + + PIXI.CanvasGraphics.renderGraphicsMask(mask, this.context); + this.context.clip(); + + mask.worldAlpha = cacheAlpha; + } + else + { + this.context.restore(); + } } } // count++