(4.14) Crashes when re-importing a static mesh that originally did not have a Material Slot (with workaround)

I’ve been getting crashes when trying to re-import a static mesh from FBX. Took a lot of crashes to figure out what was going on. Turns out the problem was that the mesh didn’t have a material assigned to it in 3DSMax, so when Unreal imported it, it started with 0 Material Slots. I added a Material Slot in UE4. When I tried to re-import it, it always crashed. It seems Unreal didn’t like it that the FBX was saying zero materials and the unreal asset was saying 1 material slot. The workaround is to add a material to the mesh in 3DSMax and re-export the FBX. After that, the crashes stopped.

Steps to recreate:

  • Make a mesh in external program.
  • Do not assign material to it.
  • Export as FBX.
  • Import into UE4 as static mesh.
  • Object has zero material slots.
  • Add a material slot to it.
  • Re-import the mesh,
  • Unreal should crash.

Workaround:

  • Apply a material to the mesh in external program.
  • Export as FBX (overwrite the old one).
  • In UE4, re-import the mesh.
  • Unreal should import successfully.