[TriLib2]FBXを外部ソースから読み込んだ際、何故か大量のMaterial(Submesh)が生成されてしまう問題

Unity
Materialsがとんでもない数になっている

IssueとかForumとかに無かった問題を踏んでしまったのでメモ

テクスチャが存在しないFBXデータを読み込む時は注意が必要

正規なFBXエクスポーター以外で出力されたFBXで当たった問題なのでもしかしたら、の話になります。
TriLib2を使ってダウンロードしたFBXを読み込む時、 AssetLoader.LoadModelFromStream でassetLoaderOptionsを渡しますが、この時 AssetLoader.CreateDefaultLoaderOptions()でデフォルトのインポート設定を与えて適当にインポートを行った所、Meshの全てがTriangleのSubmeshで分割された凶悪なオブジェクトが生成されました(大量のMaterialがアタッチされているので当然重い)。

Consoleには Mesh [...] has no tangents. TriLib will calculate them using Unity builtin tangent calculator. というWarningも出ており、当初はFBXのデータ自体に問題があると考えていましたが、結局FBXをダウンロードしてEditorの標準機能でImportした際にはSubmeshが生成されなかったことからTriLib2側の挙動によるものとアタリを付けました。

テクスチャインポートの謎挙動

結局「Materialの生成でバグってるならImport時にそれら処理をスキップすれば良いんじゃね」という事でAssetLoaderOptionsの Import TexturesImport Materialsをオフにしたらすんなり上手く行ったという。
ただしMaterialのインポートを行わない場合はSkinned Mesh Rendererにはデフォルトのマテリアルがアタッチされてしまう(Allocationsに乗らない)ので、がんばってMeshのあるGameObjectから探して適切なMaterialを作ってあげる必要があります。