浏览代码

update webgl state

Garrett Johnson 6 年之前
父节点
当前提交
b0403abc33
共有 2 个文件被更改,包括 6 次插入7 次删除
  1. 1 1
      src/materials/Material.js
  2. 5 6
      src/renderers/webgl/WebGLState.js

+ 1 - 1
src/materials/Material.js

@@ -46,7 +46,7 @@ function Material() {
 	this.stencilFail = KeepStencilOp;
 	this.stencilZFail = KeepStencilOp;
 	this.stencilZPass = KeepStencilOp;
-	this.stencilWrite = true;
+	this.stencilWrite = false;
 
 	this.clippingPlanes = null;
 	this.clipIntersection = false;

+ 5 - 6
src/renderers/webgl/WebGLState.js

@@ -677,13 +677,12 @@ function WebGLState( gl, extensions, utils, capabilities ) {
 		depthBuffer.setMask( material.depthWrite );
 		colorBuffer.setMask( material.colorWrite );
 
-		var stencil = material.stencil;
-		var useStencil = stencil !== null;
-		stencilBuffer.setTest( useStencil );
-		if ( useStencil ) {
+		var stencilWrite = material.stencilWrite;
+		stencilBuffer.setTest( stencilWrite );
+		if ( stencilWrite ) {
 
-			stencilBuffer.setFunc( stencil.func, stencil.ref, stencil.mask );
-			stencilBuffer.setOp( stencil.fail, stencil.zfail, stencil.zpass );
+			stencilBuffer.setFunc( material.stencilFunc, material.stencilRef, material.stencilMask );
+			stencilBuffer.setOp( material.stencilFail, material.stencilZFail, material.stencilZPass );
 
 		}