ソースを参照

Fixing glTF file loader when a material has been already set by the user
Multi material is still created in case the user wants to retrieve it

Julien Moreau-Mathis 8 年 前
コミット
3b4c867aaf

+ 3 - 1
dist/preview release/loaders/babylon.glTFFileLoader.js

@@ -596,7 +596,9 @@ var BABYLON;
             return newMesh;
         }
         var multiMat = new BABYLON.MultiMaterial("multimat" + id, gltfRuntime.scene);
-        newMesh.material = multiMat;
+        if (!newMesh.material) {
+            newMesh.material = multiMat;
+        }
         var vertexData = new BABYLON.VertexData();
         var geometry = new BABYLON.Geometry(id, gltfRuntime.scene, vertexData, false, newMesh);
         var verticesStarts = [];

ファイルの差分が大きいため隠しています
+ 1 - 1
dist/preview release/loaders/babylon.glTFFileLoader.min.js


+ 4 - 1
loaders/src/glTF/babylon.glTFFileLoader.ts

@@ -613,7 +613,10 @@ module BABYLON {
             return newMesh;
         }
         var multiMat = new MultiMaterial("multimat" + id, gltfRuntime.scene);
-        newMesh.material = multiMat;
+
+        if (!newMesh.material) {
+            newMesh.material = multiMat;
+        }
 
         var vertexData = new VertexData();
         var geometry = new Geometry(id, gltfRuntime.scene, vertexData, false, newMesh);