Skip to content

Commit 3acb38b

Browse files
authored
Merge pull request #199 from Unity-Technologies/UNI-28447-max-crash-importing-fbx
UNI-28557 Max crash on FBX import: too many normals, binormals, etc.
2 parents ce61f06 + 540b6cb commit 3acb38b

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

Assets/FbxExporters/Editor/FbxExporter.cs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -585,8 +585,7 @@ void ExportMesh (MeshInfo meshInfo, FbxNode fbxNode)
585585
}
586586
}
587587

588-
int[] unmergedPolygons = new int[meshInfo.Triangles.Length];
589-
int current = 0;
588+
var unmergedPolygons = new List<int> ();
590589
var mesh = meshInfo.mesh;
591590
for (int s = 0; s < mesh.subMeshCount; s++) {
592591
var topology = mesh.GetTopology (s);
@@ -624,12 +623,11 @@ void ExportMesh (MeshInfo meshInfo, FbxNode fbxNode)
624623

625624
// Save the polygon order (without merging vertices) so we
626625
// properly export UVs, normals, binormals, etc.
627-
unmergedPolygons [current] = polyVert;
626+
unmergedPolygons.Add(polyVert);
628627

629628
polyVert = ControlPointToIndex [meshInfo.Vertices [polyVert]];
630629
fbxMesh.AddPolygon (polyVert);
631630

632-
current++;
633631
}
634632
fbxMesh.EndPolygon ();
635633
}
@@ -643,7 +641,7 @@ void ExportMesh (MeshInfo meshInfo, FbxNode fbxNode)
643641
AssignLayerElementMaterial (fbxMesh, meshInfo.mesh, meshInfo.Materials.Length);
644642

645643
// Set up normals, etc.
646-
ExportComponentAttributes (meshInfo, fbxMesh, unmergedPolygons);
644+
ExportComponentAttributes (meshInfo, fbxMesh, unmergedPolygons.ToArray());
647645

648646
// set the fbxNode containing the mesh
649647
fbxNode.SetNodeAttribute (fbxMesh);

0 commit comments

Comments
 (0)