فهرست منبع

Adjusted process to prevent duplicates

= 6 سال پیش
والد
کامیت
31e88391ac
1فایلهای تغییر یافته به همراه8 افزوده شده و 4 حذف شده
  1. 8 4
      src/Meshes/mesh.ts

+ 8 - 4
src/Meshes/mesh.ts

@@ -3641,16 +3641,20 @@ export class Mesh extends AbstractMesh implements IGetSetVerticesData {
                         var material = meshes[index].material;
                         if (material instanceof MultiMaterial) {
                             for (matIndex = 0; matIndex < material.subMaterials.length; matIndex++) {
-                                materialArray.push(<Material>material.subMaterials[matIndex]);
+                                if (materialArray.indexOf(<Material>material.subMaterials[matIndex]) < 0) {
+                                    materialArray.push(<Material>material.subMaterials[matIndex]);
+                                }
                             }
                             for (subIndex = 0; subIndex < meshes[index].subMeshes.length; subIndex++) {
-                                materialIndexArray.push(meshes[index].subMeshes[subIndex].materialIndex + maxValue);
+                                materialIndexArray.push(materialArray.indexOf(<Material>material.subMaterials[meshes[index].subMeshes[subIndex].materialIndex]));
                                 indiceArray.push(meshes[index].subMeshes[subIndex].indexCount);
                             }
                         } else {
-                            materialArray.push(<Material>material);
+                            if (materialArray.indexOf(<Material>material) < 0) {
+                                materialArray.push(<Material>material);
+                            }
                             for (subIndex = 0; subIndex < meshes[index].subMeshes.length; subIndex++) {
-                                materialIndexArray.push(0 + maxValue);
+                                materialIndexArray.push(materialArray.indexOf(<Material>material));
                                 indiceArray.push(meshes[index].subMeshes[subIndex].indexCount);
                             }
                         }