2020/11/09
今回はUnityにBlenderのモデルをインポートする際のちょっとしたお話です。
最近のUnityとBlenderでモデルをインポートすると、アニメーション名は「Armature名+アニメーション名」になります。
私の作るモデルは基本的に1モデル=1Armatureにしているので、接頭辞のArmature名が正直言って邪魔です。
なのでインポート時にその部分を消したアニメーション名となるようにしてみました。
using System.Linq; using UnityEditor; using UnityEngine; public class AnimationPostProcessor : AssetPostprocessor { private ModelImporter importer; private void OnPreprocessModel() { importer = assetImporter as ModelImporter; } private void OnPostprocessModel(GameObject gameObject) { var animationList = importer.defaultClipAnimations.ToList(); foreach (var animation in animationList) { animation.name = animation.name.Replace("Armature|", ""); } importer.clipAnimations = animationList.ToArray(); } }
このスクリプトをEditorフォルダに入れた状態でモデルをインポートすればOKです。
すごく些細なことですが地味に面倒なので、エディタ拡張で変えられる部分でよかったです。