コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】3D モデルがインポートされた時にマテリアルをプレハブ外に出すエディタ拡張

概要

現在の Unity は 3D モデルがインポートされた時に
マテリアルがプレハブの中に内包された形になりますが、

using UnityEditor;

public sealed class ModelPostprocessor : AssetPostprocessor
{
    private void OnPreprocessModel()
    {
        var importer = assetImporter as ModelImporter;
        importer.materialLocation = ModelImporterMaterialLocation.External;
    }
}

上記のようなエディタ拡張を作ることで、
3D モデルがインポートされた時にマテリアルを
プレハブ外の「Materials」フォルダに出すことができます