Browse Source

Code clean up.

Mr.doob 11 years ago
parent
commit
44f71782d8
1 changed files with 68 additions and 55 deletions
  1. 68 55
      src/loaders/SceneLoader.js

+ 68 - 55
src/loaders/SceneLoader.js

@@ -361,61 +361,74 @@ THREE.SceneLoader.prototype = {
 
 
 					// lights
 					// lights
 
 
-		            // lights
-		          } else if (objJSON.type === "PointLight" || objJSON.type === "AmbientLight" || objJSON.type === "SpotLight" || objJSON.type === "HemisphereLight" || objJSON.type === "AreaLight") {
-		            function rotate(x, y, z, vector3) {
-		              var target = new THREE.Matrix4(
-		                vector3[0], 0, 0, 0
-		                , vector3[1], 0, 0, 0
-		                , vector3[2], 0, 0, 0
-		                , 0         , 0, 0, 0
-		              );
-		              var rotateX = new THREE.Matrix4(),
-		                  rotateY = new THREE.Matrix4(),
-		                  rotateZ = new THREE.Matrix4();
-		              rotateX.makeRotationX(x);
-		              rotateY.makeRotationY(y);
-		              rotateZ.makeRotationZ(z);
-		              var rotateM = new THREE.Matrix4();
-		              rotateM.multiplyMatrices(rotateX, rotateY, rotateZ);
-		              target.multiplyMatrices(rotateM, target);
-		              return target;
-		            }
-
-		            var intensity = objJSON.intensity;
-		            var color = objJSON.color;
-		            var distance = objJSON.distance;
-		            var position = objJSON.position;
-		            var rotation = objJSON.rotation;
-		            if (objJSON.type === "PointLight") {
-		              light = new THREE.PointLight(color, intensity, distance);
-		              light.position.fromArray(position);
-		            } else if (objJSON.type === "SpotLight") {
-		              light = new THREE.SpotLight(color, intensity, distance, 1);
-		              light.angle = objJSON.angle;
-		              light.position.fromArray(position);
-		              var target = rotate(rotation[0], rotation[1], rotation[2],
-		                                  [position[0], position[1] - distance, position[2]]);
-		              light.target.position = new THREE.Vector3(target.elements[0], target.elements[1], target.elements[2]);
-		            } else if (objJSON.type === "AmbientLight") {
-		              light = new THREE.AmbientLight(color);
-		            } else if (objJSON.type === "HemisphereLight") {
-		              light = new THREE.DirectionalLight(color, intensity, distance);
-		              var target = rotate(rotation[0], rotation[1], rotation[2],
-		                                  [position[0], position[1] - distance, position[2]]);
-		              light.target.position = new THREE.Vector3(target.elements[0], target.elements[1], target.elements[2]);
-		            } else if (objJSON.type === "AreaLight") {
-		              light = new THREE.AreaLight(color, intensity);
-		              light.position.set(position[0], position[1], position[2]);
-		              light.width = objJSON.size;
-		              light.height = objJSON.size_y;
-		            }
-		            parent.add( light );
-		            light.name = objID;
-		            result.lights[ objID ] = light;
-		            result.objects[ objID ] = light;
-
-		            // cameras
+					} else if (objJSON.type === "PointLight" || objJSON.type === "AmbientLight" || objJSON.type === "SpotLight" || objJSON.type === "HemisphereLight" || objJSON.type === "AreaLight") {
+
+						function rotate(x, y, z, vector3) {
+							var target = new THREE.Matrix4(
+							vector3[0], 0, 0, 0,
+							vector3[1], 0, 0, 0,
+							vector3[2], 0, 0, 0,
+							0		 , 0, 0, 0
+							);
+							var rotateX = new THREE.Matrix4();
+							var	rotateY = new THREE.Matrix4(),
+							var rotateZ = new THREE.Matrix4();
+							rotateX.makeRotationX(x);
+							rotateY.makeRotationY(y);
+							rotateZ.makeRotationZ(z);
+							var rotateM = new THREE.Matrix4();
+							rotateM.multiplyMatrices(rotateX, rotateY, rotateZ);
+							target.multiplyMatrices(rotateM, target);
+							return target;
+						}
+
+						var intensity = objJSON.intensity;
+						var color = objJSON.color;
+						var distance = objJSON.distance;
+						var position = objJSON.position;
+						var rotation = objJSON.rotation;
+
+						if (objJSON.type === "PointLight") {
+
+							light = new THREE.PointLight(color, intensity, distance);
+							light.position.fromArray(position);
+
+						} else if (objJSON.type === "SpotLight") {
+
+							light = new THREE.SpotLight(color, intensity, distance, 1);
+							light.angle = objJSON.angle;
+							light.position.fromArray(position);
+							var target = rotate(rotation[0], rotation[1], rotation[2],
+												[position[0], position[1] - distance, position[2]]);
+							light.target.position = new THREE.Vector3(target.elements[0], target.elements[1], target.elements[2]);
+
+						} else if (objJSON.type === "AmbientLight") {
+
+							light = new THREE.AmbientLight(color);
+
+						} else if (objJSON.type === "HemisphereLight") {
+
+							light = new THREE.DirectionalLight(color, intensity, distance);
+							var target = rotate(rotation[0], rotation[1], rotation[2],
+												[position[0], position[1] - distance, position[2]]);
+							light.target.position = new THREE.Vector3(target.elements[0], target.elements[1], target.elements[2]);
+
+						} else if (objJSON.type === "AreaLight") {
+
+							light = new THREE.AreaLight(color, intensity);
+							light.position.set(position[0], position[1], position[2]);
+							light.width = objJSON.size;
+							light.height = objJSON.size_y;
+
+						}
+
+						parent.add( light );
+
+						light.name = objID;
+						result.lights[ objID ] = light;
+						result.objects[ objID ] = light;
+
+					// cameras
 
 
 					} else if ( objJSON.type === "PerspectiveCamera" || objJSON.type === "OrthographicCamera" ) {
 					} else if ( objJSON.type === "PerspectiveCamera" || objJSON.type === "OrthographicCamera" ) {