|
@@ -210,7 +210,7 @@ new THREE.SphereGeometry(l.radius,l.widthSegments,l.heightSegments),A.geometries
|
|
|
q&&(L[q]=l[q]);this.geometryHandlerMap[l.type].loaderObject.load(d(l.url,G.urlBaseType),g(D),L)}else"embedded"===l.type&&(L=G.embeds[l.id],L.metadata=G.metadata,L&&this.geometryHandlerMap.ascii.loaderObject.createModel(L,i(D),""));for(var y in G.textures)if(D=G.textures[y],D.url instanceof Array){F+=D.url.length;for(q=0;q<D.url.length;q++)n.onLoadStart()}else F+=1,n.onLoadStart();z=F;for(y in G.textures){D=G.textures[y];void 0!==D.mapping&&void 0!==THREE[D.mapping]&&(D.mapping=new THREE[D.mapping]);
|
|
|
if(D.url instanceof Array){L=D.url.length;l=[];for(q=0;q<L;q++)l[q]=d(D.url[q],G.urlBaseType);q=(q=l[0].endsWith(".dds"))?THREE.ImageUtils.loadCompressedTextureCube(l,D.mapping,I(L)):THREE.ImageUtils.loadTextureCube(l,D.mapping,I(L))}else q=D.url.toLowerCase().endsWith(".dds"),L=d(D.url,G.urlBaseType),l=I(1),q=q?THREE.ImageUtils.loadCompressedTexture(L,D.mapping,l):THREE.ImageUtils.loadTexture(L,D.mapping,l),void 0!==THREE[D.minFilter]&&(q.minFilter=THREE[D.minFilter]),void 0!==THREE[D.magFilter]&&
|
|
|
(q.magFilter=THREE[D.magFilter]),D.anisotropy&&(q.anisotropy=D.anisotropy),D.repeat&&(q.repeat.set(D.repeat[0],D.repeat[1]),1!==D.repeat[0]&&(q.wrapS=THREE.RepeatWrapping),1!==D.repeat[1]&&(q.wrapT=THREE.RepeatWrapping)),D.offset&&q.offset.set(D.offset[0],D.offset[1]),D.wrap&&(L={repeat:THREE.RepeatWrapping,mirror:THREE.MirroredRepeatWrapping},void 0!==L[D.wrap[0]]&&(q.wrapS=L[D.wrap[0]]),void 0!==L[D.wrap[1]]&&(q.wrapT=L[D.wrap[1]]));A.textures[y]=q}var K,J;for(K in G.materials){y=G.materials[K];
|
|
|
-for(J in y.parameters)"envMap"===J||"map"===J||"lightMap"===J||"bumpMap"===J?y.parameters[J]=A.textures[y.parameters[J]]:"shading"===J?y.parameters[J]="flat"===y.parameters[J]?THREE.FlatShading:THREE.SmoothShading:"side"===J?y.parameters[J]="double"==y.parameters[J]?THREE.DoubleSide:"back"==y.parameters[J]?THREE.BackSide:THREE.FrontSide:"blending"===J?y.parameters[J]=y.parameters[J]in THREE?THREE[y.parameters[J]]:THREE.NormalBlending:"combine"===J?y.parameters[J]="MixOperation"==y.parameters[J]?THREE.MixOperation:
|
|
|
+for(J in y.parameters)"envMap"===J||"map"===J||"lightMap"===J||"bumpMap"===J?y.parameters[J]=A.textures[y.parameters[J]]:"shading"===J?y.parameters[J]="flat"===y.parameters[J]?THREE.FlatShading:THREE.SmoothShading:"side"===J?y.parameters[J]="double"==y.parameters[J]?THREE.DoubleSide:"back"==y.parameters[J]?THREE.BackSide:THREE.FrontSide:"blending"===J?y.parameters[J]=y.parameters[J]in THREE?THREE[y.parameters[J]]:THREE.NormalBlending:"combine"===J?y.parameters[J]=y.parameters[J]in THREE?THREE[y.parameters[J]]:
|
|
|
THREE.MultiplyOperation:"vertexColors"===J?"face"==y.parameters[J]?y.parameters[J]=THREE.FaceColors:y.parameters[J]&&(y.parameters[J]=THREE.VertexColors):"wrapRGB"===J&&(I=y.parameters[J],y.parameters[J]=new THREE.Vector3(I[0],I[1],I[2]));void 0!==y.parameters.opacity&&1>y.parameters.opacity&&(y.parameters.transparent=!0);y.parameters.normalMap?(I=THREE.ShaderUtils.lib.normal,D=THREE.UniformsUtils.clone(I.uniforms),q=y.parameters.color,L=y.parameters.specular,l=y.parameters.ambient,$=y.parameters.shininess,
|
|
|
D.tNormal.value=A.textures[y.parameters.normalMap],y.parameters.normalScale&&D.uNormalScale.value.set(y.parameters.normalScale[0],y.parameters.normalScale[1]),y.parameters.map&&(D.tDiffuse.value=y.parameters.map,D.enableDiffuse.value=!0),y.parameters.envMap&&(D.tCube.value=y.parameters.envMap,D.enableReflection.value=!0,D.uReflectivity.value=y.parameters.reflectivity),y.parameters.lightMap&&(D.tAO.value=y.parameters.lightMap,D.enableAO.value=!0),y.parameters.specularMap&&(D.tSpecular.value=A.textures[y.parameters.specularMap],
|
|
|
D.enableSpecular.value=!0),y.parameters.displacementMap&&(D.tDisplacement.value=A.textures[y.parameters.displacementMap],D.enableDisplacement.value=!0,D.uDisplacementBias.value=y.parameters.displacementBias,D.uDisplacementScale.value=y.parameters.displacementScale),D.uDiffuseColor.value.setHex(q),D.uSpecularColor.value.setHex(L),D.uAmbientColor.value.setHex(l),D.uShininess.value=$,y.parameters.opacity&&(D.uOpacity.value=y.parameters.opacity),r=new THREE.ShaderMaterial({fragmentShader:I.fragmentShader,
|