浏览代码

Geometry: Cleaned up clone().

Mr.doob 10 年之前
父节点
当前提交
11b5d86fc7
共有 1 个文件被更改,包括 13 次插入9 次删除
  1. 13 9
      src/core/Geometry.js

+ 13 - 9
src/core/Geometry.js

@@ -996,25 +996,29 @@ THREE.Geometry.prototype = {
 
 		}
 
-		for ( var uvLayer = 0, uvl = this.faceVertexUvs.length; uvLayer < uvl; uvLayer ++ ) {
+		for ( var i = 0, il = this.faceVertexUvs.length; i < il; i ++ ) {
 
-			var uvs = this.faceVertexUvs[ uvLayer ];
+			var faceVertexUvs = this.faceVertexUvs[ i ];
+
+			if ( geometry.faceVertexUvs[ i ] === undefined ) {
+
+				geometry.faceVertexUvs[ i ] = [];
 
-			if ( ! geometry.faceVertexUvs[ uvLayer ] ) {
-				geometry.faceVertexUvs[ uvLayer ] = [];
 			}
 
-			for ( var i = 0, il = uvs.length; i < il; i ++ ) {
+			for ( var j = 0, jl = faceVertexUvs.length; j < jl; j ++ ) {
+
+				var uvs = faceVertexUvs[ j ], uvsCopy = [];
 
-				var uv = uvs[ i ], uvCopy = [];
+				for ( var k = 0, kl = uvs.length; k < kl; k ++ ) {
 
-				for ( var j = 0, jl = uv.length; j < jl; j ++ ) {
+					var uv = uvs[ k ];
 
-					uvCopy.push( new THREE.Vector2( uv[ j ].x, uv[ j ].y ) );
+					uvsCopy.push( uv.clone() );
 
 				}
 
-				geometry.faceVertexUvs[ uvLayer ].push( uvCopy );
+				geometry.faceVertexUvs[ i ].push( uvsCopy );
 
 			}