セキュリティ系の勉強・その他開発メモとか雑談. Twitter, ブログカテゴリ一覧
本ブログはあくまでセキュリティに関する情報共有の一環として作成したものであり,公開されているシステム等に許可なく実行するなど、違法な行為を助長するものではありません.

Maya〜Humanoid骨格で自作のアニメーションを作ってFBXで出力したい

//

満を辞して登場!ついに因縁のアニメーション制作!ここの部分を打ち込んでいる今、僕はまだ取り掛かっていません!できるかわからないです!


2日後...

こんばんは笑 超時間を費やしました。正確に言うと、一昨日の23時から明け方4時までと、本日8日を丸々使いまして、無事fbx形式のアニメーションを書き出せました!しかもすでにUnityの方で動作確認済み!素晴らしい!ただ、例のごとく参考サイト通りに全く行かず、(今回はひどかった。。)結局自我流となってしまいました。ので、今回もそんなとりあえず動くfbxをとりあえず出力できれば後は自分で頑張れると言う人向けに、頑張って描こうかなと!このように思っています!

[Unityに送信]

 ああ、なんて便利な機能が実装されているのだろう。。そう思ってました。これが元凶で、いざアニメーションをつけて出力すると、Unityには土嚢のような謎の物体しか読み込まれないではありませんか笑 
 このボタンが機能しなかったため、(原因はイマイチわからないけど、自分が悪い)他の方法を探していました。

そもそもなんでfbxで出力したいのか

 僕の知っている知識の中では、アニメーションに好きなタイミングで実行させたい関数を付与できるのがfbx形式のアニメーションのみだとわかっているからです。Eventってことです。例えば、剣を振り終わったら、booleanのAttack変数をfalseにする関数を振り終わったタイミングで呼ぶように指定でき、便利だからです。もし、fbx形式以外でもできるのなら話は変わってきますが、この理由でfbxにこだわっていました。Assets Storeのアニメーションはfbxではなかったりするので、困ってました。

実行環境

Maya2016
MacOS 10.12.1
unity 5.4.1fかな確か。。

Mayaでアニメーションを作成する

まずここはアニメーションに変更してください。
f:id:thinline196:20161209001536p:plain



そしてここがアニメーションを管理する場所となります。
f:id:thinline196:20161209001619p:plain


ここにキーと呼ばれる、アニメーションの途中のポーズをたくさん保存して、それをある程度Mayaの方で補完をしてもらい、アニメーションとなります。



ポーズの変更は基本的にRigを回転で変えていきます。Rigを移動で動かすと体が伸びますので全体のRigを選択して、場所を少し移動させる以外はあまりやらないほうがいいかな思います。とりあえずポーズを決めましょう。
f:id:thinline196:20161209001642p:plain



こんな感じかな。そしたらこれをキーとして保存します。
この下の写真の項目の一番下の3つに分割するビューに変更します。
f:id:thinline196:20161209001711p:plain



そしたらこの右のやつをすべて選択します。(写真はすでに選択している場面で、選択すると黄色くなります。)
f:id:thinline196:20161209001737p:plain



最後に、先ほど見せた時間の帯のような部分でそのポーズを登録したい部分をクリック。そして、上部のメニューより[キー>キーの設定]を実行すると、選択した時間に赤い縦線が入ると思います。これでキーが保存できました。

後はポーズを変えてこれを繰り返し、パラパラ漫画のように作っていきます。まず大まかに流れを作成してから、間に中間のポーズを挿入してくと良いでしょう。最終的にこんな感じになると思います。

f:id:thinline196:20161209001815p:plain



グラフの扱いについては調べれば出てくるのでそれほど困らないと思います。

アニメーションをfbxで出力

 ここからは効率悪い作業になるかもしれません。

まず、出力したいキャラのRigとオブジェクトを選択してください。

[ファイル>選択項目の書き出し...]の四角ボタンからオプションを開いてください。このような画面になります。
f:id:thinline196:20161209002822p:plain



ファイルタイプはfbxを指定してください。[プリセットを編集]ボタンを押します。

[アニメーションをベイク処理]の項目をチェックし、自分のアニメーションの再生フレームを設定します。
f:id:thinline196:20161209002835p:plain



プリセットを保存してください。

これでfbxを書き出し(警告が出るが問題はない)、Unityにインポートすればアニメーション付きfbxとして読み込まれます!!(正確にはオブジェクトと言うべきか)


自分のために書きましたが、もし悩んでいる方の参考になれば幸いです。


あ、このキャラクタを作成するシリーズもあるので、もしよかったら。
thinline196.hatenablog.com
thinline196.hatenablog.com