Unityで読み込んだモデルのアニメーション分割を自動化。

体験したことある人はわかると思いますが。

3Dモデルのフレームアニメーションを、動作毎に分割する作業、とっても面倒でした。

Unity4はMecanimとかでちょっと違ったワークフローになってきていますが、
3Dモデルをもらって、Unityに持ってくるときにいちいち

そこで作りましたよ。

ModelAnimationSplitter

拡張子を.txtに変えたCSVファイルUnity内に置いて、 ModelAnimationSplitter.csをEditorフォルダに配置。

メニューバーの Tools->Model->Animation Splitter を選択するとウィンドウがでます。

3Dモデルと、CSVをドラッグして、スプリット!!

フォーマットはこんな感じ。簡単なので、すぐ出来ると思います。

wait1,1,36,Loop wait2,50,58,Loop wait2loop,58,59,Loop buttlePose1,150,190,Once buttlePose2,200,215,PingPong buttlePose3,215,250,ClampForever talkStart,300,312,Default hear,400,412,Default thankyou,500,512,Default bow,600,612,Default swiinghand,700,712,Default swiinghandLoop,712,726,Loop <

ImageAlphaのバッチ処理に感動した。

ImageAlphaは、一枚ずつ、劣化がないかを確認しながら変換するのですが。100枚あるとさすがに…。となるので、ImageAlphaの中にあるコマンドを、Terminalから直接叩くことにしました。

指定のフォルダに行って、このコマンド。 32の部分は色数なので、画像に応じて、適宜変えていってください。


追記 2013-03-05 バッチ回したあとに、imageoptimへ自動で送るようにしました。便利!


追記 2016-07-10 コマンドのパス修正した