Browse Source

Merge pull request #12285 from looeee/FBXLoader_ambient_light_fix

FBXLoader: Added check for presence of GlobalSettings to ambient light
Mr.doob 7 years ago
parent
commit
d5fc67197c
1 changed files with 12 additions and 7 deletions
  1. 12 7
      examples/js/loaders/FBXLoader.js

+ 12 - 7
examples/js/loaders/FBXLoader.js

@@ -1924,18 +1924,23 @@
 
 
 		// Parse ambient color - if it's not set to black (default), create an ambient light
-		var ambientColor = FBXTree.GlobalSettings.properties.AmbientColor.value;
-		var r = ambientColor[ 0 ];
-		var g = ambientColor[ 1 ];
-		var b = ambientColor[ 2 ];
+		if ( 'GlobalSettings' in FBXTree && 'AmbientColor' in FBXTree.GlobalSettings.properties ) {
 
-		if ( r !== 0 || g !== 0 || b !== 0 ) {
+			var ambientColor = FBXTree.GlobalSettings.properties.AmbientColor.value;
+			var r = ambientColor[ 0 ];
+			var g = ambientColor[ 1 ];
+			var b = ambientColor[ 2 ];
 
-			var color = new THREE.Color( r, g, b );
-			sceneGraph.add( new THREE.AmbientLight( color, 1 ) );
+			if ( r !== 0 || g !== 0 || b !== 0 ) {
+
+				var color = new THREE.Color( r, g, b );
+				sceneGraph.add( new THREE.AmbientLight( color, 1 ) );
+
+			}
 
 		}
 
+
 		return sceneGraph;
 
 	}