diff --git a/packages/core/src/mask/StencilSystem.js b/packages/core/src/mask/StencilSystem.js index 412662f..0452e31 100644 --- a/packages/core/src/mask/StencilSystem.js +++ b/packages/core/src/mask/StencilSystem.js @@ -31,8 +31,10 @@ setMaskStack(stencilMaskStack) { const gl = this.renderer.gl; + const curStackLen = this.stencilMaskStack.length; - if (stencilMaskStack.length !== this.stencilMaskStack.length) + this.stencilMaskStack = stencilMaskStack; + if (stencilMaskStack.length !== curStackLen) { if (stencilMaskStack.length === 0) { @@ -41,10 +43,9 @@ else { gl.enable(gl.STENCIL_TEST); + this._useCurrent(); } } - - this.stencilMaskStack = stencilMaskStack; } /**