@@ -157,26 +157,28 @@ var BitmapMaskPipeline = new Class({
157157 */
158158 beginMask : function ( mask , maskedObject , camera )
159159 {
160- var bitmapMask = mask . bitmapMask ;
161160 var renderer = this . renderer ;
162161 var gl = this . gl ;
163- var visible = bitmapMask . visible ;
162+
163+ // The renderable Game Object that is being used for the bitmap mask
164+ var bitmapMask = mask . bitmapMask ;
164165
165166 if ( bitmapMask && gl )
166167 {
168+ renderer . flush ( ) ;
169+
167170 // First we clear the mask framebuffer
168171 renderer . setFramebuffer ( mask . maskFramebuffer ) ;
169172 gl . clearColor ( 0 , 0 , 0 , 0 ) ;
170173 gl . clear ( gl . COLOR_BUFFER_BIT ) ;
171174
172175 // We render our mask source
173- bitmapMask . visible = true ;
174- bitmapMask . renderWebGL ( renderer , bitmapMask , 0.0 , camera ) ;
175- bitmapMask . visible = visible ;
176+ bitmapMask . renderWebGL ( renderer , bitmapMask , 0 , camera ) ;
176177 renderer . flush ( ) ;
177178
178179 // Bind and clear our main source (masked object)
179180 renderer . setFramebuffer ( mask . mainFramebuffer ) ;
181+
180182 gl . clearColor ( 0 , 0 , 0 , 0 ) ;
181183 gl . clear ( gl . COLOR_BUFFER_BIT ) ;
182184 }
@@ -195,11 +197,13 @@ var BitmapMaskPipeline = new Class({
195197 */
196198 endMask : function ( mask )
197199 {
198- var bitmapMask = mask . bitmapMask ;
199200 var renderer = this . renderer ;
200201 var gl = this . gl ;
201202
202- if ( bitmapMask )
203+ // The renderable Game Object that is being used for the bitmap mask
204+ var bitmapMask = mask . bitmapMask ;
205+
206+ if ( bitmapMask && gl )
203207 {
204208 // Return to default framebuffer
205209 renderer . setFramebuffer ( null ) ;
0 commit comments