瀏覽代碼

Renamed renderer.shadowMaterialSide => renderer.shadowMapCullFace

Default value THREE.CullFaceFront, other valid value THREE.CullFaceBack.

These constants also go into renderer.setFaceCulling( cullFace, frontFace ) where they replace strings:

"back"  => THREE.CullFaceBack
"front" => THREE.CullFaceFront
"frontback"    => THREE.CullFaceFrontBack
""/0/undefined => THREE.CullFaceNone

See discussion in #2683
alteredq 12 年之前
父節點
當前提交
ea4b8a6045

+ 16 - 10
build/three.js

@@ -81,6 +81,12 @@ String.prototype.trim = String.prototype.trim || function () {
 
 }() );
 
+// GL STATE CONSTANTS
+
+THREE.CullFaceNone = 0;
+THREE.CullFaceBack = 1;
+THREE.CullFaceFront = 2;
+THREE.CullFaceFrontBack = 3;
 
 // MATERIAL CONSTANTS
 
@@ -15668,7 +15674,7 @@ THREE.WebGLRenderer = function ( parameters ) {
 	this.shadowMapEnabled = false;
 	this.shadowMapAutoUpdate = true;
 	this.shadowMapSoft = true;
-	this.shadowMaterialSide = THREE.BackSide;
+	this.shadowMapCullFace = THREE.CullFaceFront;
 	this.shadowMapDebug = false;
 	this.shadowMapCascade = false;
 
@@ -21554,7 +21560,11 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 	this.setFaceCulling = function ( cullFace, frontFace ) {
 
-		if ( cullFace ) {
+		if ( cullFace === THREE.CullFaceNone ) {
+
+			_gl.disable( _gl.CULL_FACE );
+
+		} else {
 
 			if ( !frontFace || frontFace === "ccw" ) {
 
@@ -21566,11 +21576,11 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 			}
 
-			if( cullFace === "back" ) {
+			if ( cullFace === THREE.CullFaceBack ) {
 
 				_gl.cullFace( _gl.BACK );
 
-			} else if( cullFace === "front" ) {
+			} else if ( cullFace === THREE.CullFaceFront ) {
 
 				_gl.cullFace( _gl.FRONT );
 
@@ -21582,10 +21592,6 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 			_gl.enable( _gl.CULL_FACE );
 
-		} else {
-
-			_gl.disable( _gl.CULL_FACE );
-
 		}
 
 	};
@@ -34317,7 +34323,7 @@ THREE.ShadowMapPlugin = function ( ) {
 		_gl.enable( _gl.CULL_FACE );
 		_gl.frontFace( _gl.CCW );
 
-		if ( _renderer.shadowMaterialSide === THREE.BackSide ) {
+		if ( _renderer.shadowMapCullFace === THREE.CullFaceFront ) {
 
 			_gl.cullFace( _gl.FRONT );
 
@@ -34583,7 +34589,7 @@ THREE.ShadowMapPlugin = function ( ) {
 		_gl.clearColor( clearColor.r, clearColor.g, clearColor.b, clearAlpha );
 		_gl.enable( _gl.BLEND );
 
-		if ( _renderer.shadowMaterialSide === THREE.BackSide ) {
+		if ( _renderer.shadowMapCullFace === THREE.CullFaceFront ) {
 
 			_gl.cullFace( _gl.BACK );
 

File diff suppressed because it is too large
+ 15 - 15
build/three.min.js


+ 1 - 1
examples/webgl_lights_hemisphere.html

@@ -235,7 +235,7 @@
 				renderer.physicallyBasedShading = true;
 
 				renderer.shadowMapEnabled = true;
-				renderer.shadowMaterialSide = THREE.FrontSide;
+				renderer.shadowMapCullFace = THREE.CullFaceBack;
 
 				// STATS
 

+ 1 - 1
examples/webgl_loader_stl.html

@@ -129,7 +129,7 @@
 				renderer.physicallyBasedShading = true;
 
 				renderer.shadowMapEnabled = true;
-				renderer.shadowMaterialSide = THREE.FrontSide;
+				renderer.shadowMapCullFace = THREE.CullFaceBack;
 
 				container.appendChild( renderer.domElement );
 

+ 1 - 1
examples/webgl_materials_bumpmap.html

@@ -181,7 +181,7 @@
 				container.appendChild( renderer.domElement );
 
 				renderer.shadowMapEnabled = true;
-				renderer.shadowMaterialSide = THREE.FrontSide;
+				renderer.shadowMapCullFace = THREE.CullFaceBack;
 
 				//
 

+ 1 - 1
examples/webgl_materials_bumpmap_skin.html

@@ -188,7 +188,7 @@
 				renderer.setClearColor( color, 1 );
 
 				renderer.shadowMapEnabled = true;
-				renderer.shadowMaterialSide = THREE.FrontSide;
+				renderer.shadowMapCullFace = THREE.CullFaceBack;
 
 				renderer.autoClear = false;
 

+ 1 - 1
examples/webgl_materials_cars.html

@@ -209,7 +209,7 @@
 
 				renderer = new THREE.WebGLRenderer();
 				renderer.setSize( window.innerWidth, window.innerHeight );
-				renderer.setFaceCulling( 0 );
+				renderer.setFaceCulling( THREE.CullFaceNone );
 				renderer.autoClear = false;
 
 				container.appendChild( renderer.domElement );

+ 1 - 1
examples/webgl_materials_cars_anaglyph.html

@@ -202,7 +202,7 @@
 				//
 
 				renderer = new THREE.WebGLRenderer();
-				renderer.setFaceCulling( 0 );
+				renderer.setFaceCulling( THREE.CullFaceNone );
 
 				var width = window.innerWidth || 2;
 				var height = window.innerHeight || 2;

+ 1 - 1
examples/webgl_materials_cars_camaro.html

@@ -93,7 +93,7 @@
 
 				renderer = new THREE.WebGLRenderer();
 				renderer.setSize( SCREEN_WIDTH, SCREEN_HEIGHT );
-				renderer.setFaceCulling( 0 );
+				renderer.setFaceCulling( THREE.CullFaceNone );
 
 				container.appendChild( renderer.domElement );
 

+ 2 - 1
examples/webgl_materials_cars_camaro_crosseyed.html

@@ -99,7 +99,8 @@
 
 
 				renderer = new THREE.WebGLRenderer( { antialias: true } );
-				renderer.setFaceCulling( 0 );
+				renderer.setFaceCulling( THREE.CullFaceNone );
+
 				container.appendChild( renderer.domElement );
 
 				effect = new THREE.CrosseyedEffect( renderer );

+ 1 - 1
examples/webgl_materials_cars_parallaxbarrier.html

@@ -202,7 +202,7 @@
 				//
 
 				renderer = new THREE.WebGLRenderer();
-				renderer.setFaceCulling( 0 );
+				renderer.setFaceCulling( THREE.CullFaceNone );
 				container.appendChild( renderer.domElement );
 
 				var width = window.innerWidth || 2;

+ 1 - 1
examples/webgl_materials_cubemap_dynamic.html

@@ -205,7 +205,7 @@
 
 				// SHADOW
 
-				renderer.shadowMaterialSide = THREE.FrontSide;
+				renderer.shadowMapCullFace = THREE.CullFaceBack;
 				renderer.shadowMapEnabled = true;
 
 				// STATS

+ 6 - 0
src/Three.js

@@ -81,6 +81,12 @@ String.prototype.trim = String.prototype.trim || function () {
 
 }() );
 
+// GL STATE CONSTANTS
+
+THREE.CullFaceNone = 0;
+THREE.CullFaceBack = 1;
+THREE.CullFaceFront = 2;
+THREE.CullFaceFrontBack = 3;
 
 // MATERIAL CONSTANTS
 

+ 2 - 2
src/extras/renderers/plugins/ShadowMapPlugin.js

@@ -64,7 +64,7 @@ THREE.ShadowMapPlugin = function ( ) {
 		_gl.enable( _gl.CULL_FACE );
 		_gl.frontFace( _gl.CCW );
 
-		if ( _renderer.shadowMaterialSide === THREE.BackSide ) {
+		if ( _renderer.shadowMapCullFace === THREE.CullFaceFront ) {
 
 			_gl.cullFace( _gl.FRONT );
 
@@ -330,7 +330,7 @@ THREE.ShadowMapPlugin = function ( ) {
 		_gl.clearColor( clearColor.r, clearColor.g, clearColor.b, clearAlpha );
 		_gl.enable( _gl.BLEND );
 
-		if ( _renderer.shadowMaterialSide === THREE.BackSide ) {
+		if ( _renderer.shadowMapCullFace === THREE.CullFaceFront ) {
 
 			_gl.cullFace( _gl.BACK );
 

+ 8 - 8
src/renderers/WebGLRenderer.js

@@ -54,7 +54,7 @@ THREE.WebGLRenderer = function ( parameters ) {
 	this.shadowMapEnabled = false;
 	this.shadowMapAutoUpdate = true;
 	this.shadowMapSoft = true;
-	this.shadowMaterialSide = THREE.BackSide;
+	this.shadowMapCullFace = THREE.CullFaceFront;
 	this.shadowMapDebug = false;
 	this.shadowMapCascade = false;
 
@@ -5940,7 +5940,11 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 	this.setFaceCulling = function ( cullFace, frontFace ) {
 
-		if ( cullFace ) {
+		if ( cullFace === THREE.CullFaceNone ) {
+
+			_gl.disable( _gl.CULL_FACE );
+
+		} else {
 
 			if ( !frontFace || frontFace === "ccw" ) {
 
@@ -5952,11 +5956,11 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 			}
 
-			if( cullFace === "back" ) {
+			if ( cullFace === THREE.CullFaceBack ) {
 
 				_gl.cullFace( _gl.BACK );
 
-			} else if( cullFace === "front" ) {
+			} else if ( cullFace === THREE.CullFaceFront ) {
 
 				_gl.cullFace( _gl.FRONT );
 
@@ -5968,10 +5972,6 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 			_gl.enable( _gl.CULL_FACE );
 
-		} else {
-
-			_gl.disable( _gl.CULL_FACE );
-
 		}
 
 	};

Some files were not shown because too many files changed in this diff