|
@@ -499,7 +499,7 @@ THREE.FBXLoader = ( function () {
|
|
|
break;
|
|
|
default:
|
|
|
console.warn( 'THREE.FBXLoader: unknown material type "%s". Defaulting to MeshPhongMaterial.', type );
|
|
|
- material = new THREE.MeshPhongMaterial( { color: 0x3300ff } );
|
|
|
+ material = new THREE.MeshPhongMaterial();
|
|
|
break;
|
|
|
|
|
|
}
|
|
@@ -532,11 +532,13 @@ THREE.FBXLoader = ( function () {
|
|
|
parameters.color = new THREE.Color().fromArray( materialNode.DiffuseColor.value );
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.DisplacementFactor ) {
|
|
|
|
|
|
parameters.displacementScale = materialNode.DisplacementFactor.value;
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.Emissive ) {
|
|
|
|
|
|
parameters.emissive = new THREE.Color().fromArray( materialNode.Emissive.value );
|
|
@@ -547,31 +549,37 @@ THREE.FBXLoader = ( function () {
|
|
|
parameters.emissive = new THREE.Color().fromArray( materialNode.EmissiveColor.value );
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.EmissiveFactor ) {
|
|
|
|
|
|
parameters.emissiveIntensity = parseFloat( materialNode.EmissiveFactor.value );
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.Opacity ) {
|
|
|
|
|
|
parameters.opacity = parseFloat( materialNode.Opacity.value );
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( parameters.opacity < 1.0 ) {
|
|
|
|
|
|
parameters.transparent = true;
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.ReflectionFactor ) {
|
|
|
|
|
|
parameters.reflectivity = materialNode.ReflectionFactor.value;
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.Shininess ) {
|
|
|
|
|
|
parameters.shininess = materialNode.Shininess.value;
|
|
|
|
|
|
}
|
|
|
+
|
|
|
if ( materialNode.Specular ) {
|
|
|
|
|
|
parameters.specular = new THREE.Color().fromArray( materialNode.Specular.value );
|
|
@@ -594,7 +602,12 @@ THREE.FBXLoader = ( function () {
|
|
|
parameters.bumpMap = self.getTexture( textureMap, child.ID );
|
|
|
break;
|
|
|
|
|
|
+ case 'Maya|TEX_ao_map':
|
|
|
+ parameters.aoMap = self.getTexture( textureMap, child.ID );
|
|
|
+ break;
|
|
|
+
|
|
|
case 'DiffuseColor':
|
|
|
+ case 'Maya|TEX_color_map':
|
|
|
parameters.map = self.getTexture( textureMap, child.ID );
|
|
|
break;
|
|
|
|
|
@@ -602,12 +615,12 @@ THREE.FBXLoader = ( function () {
|
|
|
parameters.displacementMap = self.getTexture( textureMap, child.ID );
|
|
|
break;
|
|
|
|
|
|
-
|
|
|
case 'EmissiveColor':
|
|
|
parameters.emissiveMap = self.getTexture( textureMap, child.ID );
|
|
|
break;
|
|
|
|
|
|
case 'NormalMap':
|
|
|
+ case 'Maya|TEX_normal_map':
|
|
|
parameters.normalMap = self.getTexture( textureMap, child.ID );
|
|
|
break;
|
|
|
|