Fix #32067: since BMesh, files < 2.59.3 no longer have their texface converted
authorSergey Sharybin <sergey.vfx@gmail.com>
Thu, 12 Jul 2012 15:36:22 +0000 (15:36 +0000)
committerSergey Sharybin <sergey.vfx@gmail.com>
Thu, 12 Jul 2012 15:36:22 +0000 (15:36 +0000)
commitba44250a23b817b69bc59f61eefc0ea890dfe84d
tree1e0d148740b901abcfd7ccec9cee56576554d029
parent18d7a2316678ae7074a7f50c48453933ca7a5fb4
Fix #32067: since BMesh, files < 2.59.3 no longer have their texface converted

Issue was caused by performing conversion from FTFaces to materials from
the end of lib_link_mesh, where tesselated faces were cleared already.

This conversion can't be switched to BMesh structures because in future
MTexPolys could be changed in a way, that versioning stuff wouldn't work
any more. Another issue is that making such a conversion per-mesh would
lead to quite a code spagetti, which is difficult to follow.

Solved by splitting per-mesh cycle in lib_link_mesh, so now it consists
of three steps:

- Do linking stuff such as custom data layers, materials. Perform a
  Conversion stuff like tessface -> polys.

- Convert all MTFaces to materials. This conversion handles all meshes
  and creates needed materials.

- Free tessfaces, mark mesh as linked.

Such a separation shouldn't noticeably affect on speed of linking.
source/blender/blenloader/intern/readfile.c