Browse Source

Merge pull request #11141 from Mugen87/dev

Geometry: Fixed #11140
Mr.doob 8 years ago
parent
commit
40e5f338c2
1 changed files with 21 additions and 13 deletions
  1. 21 13
      src/core/Geometry.js

+ 21 - 13
src/core/Geometry.js

@@ -284,28 +284,36 @@ Object.assign( Geometry.prototype, EventDispatcher.prototype, {
 
 
 		}
 		}
 
 
-		if ( indices !== undefined ) {
+		var groups = geometry.groups;
 
 
-			var groups = geometry.groups;
+		if ( groups.length > 0 ) {
 
 
-			if ( groups.length > 0 ) {
+			for ( var i = 0; i < groups.length; i ++ ) {
 
 
-				for ( var i = 0; i < groups.length; i ++ ) {
+				var group = groups[ i ];
 
 
-					var group = groups[ i ];
+				var start = group.start;
+				var count = group.count;
 
 
-					var start = group.start;
-					var count = group.count;
+				for ( var j = start, jl = start + count; j < jl; j += 3 ) {
 
 
-					for ( var j = start, jl = start + count; j < jl; j += 3 ) {
+					if ( indices !== undefined ) {
 
 
 						addFace( indices[ j ], indices[ j + 1 ], indices[ j + 2 ], group.materialIndex );
 						addFace( indices[ j ], indices[ j + 1 ], indices[ j + 2 ], group.materialIndex );
 
 
+					} else {
+
+						addFace( j, j + 1, j + 2, group.materialIndex );
+
 					}
 					}
 
 
 				}
 				}
 
 
-			} else {
+			}
+
+		} else {
+
+			if ( indices !== undefined ) {
 
 
 				for ( var i = 0; i < indices.length; i += 3 ) {
 				for ( var i = 0; i < indices.length; i += 3 ) {
 
 
@@ -313,13 +321,13 @@ Object.assign( Geometry.prototype, EventDispatcher.prototype, {
 
 
 				}
 				}
 
 
-			}
+			} else {
 
 
-		} else {
+				for ( var i = 0; i < positions.length / 3; i += 3 ) {
 
 
-			for ( var i = 0; i < positions.length / 3; i += 3 ) {
+					addFace( i, i + 1, i + 2 );
 
 
-				addFace( i, i + 1, i + 2 );
+				}
 
 
 			}
 			}