Bläddra i källkod

FBXLoader2: Clean up.

Mr.doob 8 år sedan
förälder
incheckning
461a9574fb
1 ändrade filer med 5 tillägg och 6 borttagningar
  1. 5 6
      examples/js/loaders/FBXLoader2.js

+ 5 - 6
examples/js/loaders/FBXLoader2.js

@@ -1063,7 +1063,7 @@
 		var controlPoints = [];
 		var pointsValues = parseFloatArray( geometryNode.subNodes.Points.properties.a );
 
-		for ( var i = 0; i < pointsValues.length; i += 4 ) {
+		for ( var i = 0, l = pointsValues.length; i < l; i += 4 ) {
 
 			controlPoints.push( new THREE.Vector4().fromArray( pointsValues, i ) );
 
@@ -1091,17 +1091,16 @@
 		var curve = new THREE.NURBSCurve( degree, knots, controlPoints, startKnot, endKnot );
 		var vertices = curve.getPoints( controlPoints.length * 7 );
 
-		var vertexBuffer = [];
+		var positions = new Float32Array( vertices.length * 3 );
 
-		for ( var verticesIndex = 0, verticesLength = vertices.length; verticesIndex < verticesLength; ++ verticesIndex ) {
+		for ( var i = 0, l = vertices.length; i < l; ++ i ) {
 
-			var position = vertices[ verticesIndex ];
-			position.toArray( vertexBuffer, vertexBuffer.length );
+			vertices[ i ].toArray( positions, i * 3 );
 
 		}
 
 		var geometry = new THREE.BufferGeometry();
-		geometry.addAttribute( 'position', new THREE.BufferAttribute( new Float32Array( vertexBuffer ), 3 ) );
+		geometry.addAttribute( 'position', new THREE.BufferAttribute( positions, 3 ) );
 
 		return geometry;