裏鍵.dump

自分用備忘録。内容に脈絡を求めてはいけない。

MagicaVoxel→Blender→Unityでボクセルモデルを動かす⑤

MagicaVoxelで作ったボクセルにBlenderでアニメーションをつけてUnityで動かそう、の5回目。

 

使用するツール

・MagicaVoxel 0.97.4

Blender 2.74

・Unity 5.3.4f1

 

前回はボクセルモデルとボーンを関連付けて、ウェイトの設定まで行った。

あと追記でマスターボーンの追加についても触れた。

今回は、設定したウェイトを使ってアニメーションを作成してみる。

作成するのは、歩く動作と、何もしない待機動作の2つ。

 

・必要なウィンドウの表示

これからの作業には、最初から下に表示されているTimeline(水色枠)と、もう一つDope Sheetというウィンドウが必要になる。

f:id:cores0316:20160727021644p:plain

赤枠をクリックして選択することでも表示できるが、切り替えは面倒なのでどちらも表示した状態にしよう。

赤枠のすぐ左下隅にある「///」が逆向きになったようなところをドラッグすると、2つ目のTimelineが表示されるので、どちらかをDope Sheetに切り替えてやる。

これでOK。

f:id:cores0316:20160727022913p:plain

 

 

・歩行アニメーション作成

まず、Dope Sheetの赤枠をクリックして、Action Editorに切り替える。

f:id:cores0316:20160727024552p:plain

すると、すぐ横のインターフェイスが下記のようになったはず。

f:id:cores0316:20160727025410p:plain

「New」と書かれたボタンをクリックして、新しいアクションを作成する。

Actionという名前になっているのでWalkに変更し、すぐ隣の「F」と書かれたボタンをクリックする。

何やらせっかく作成したアニメーションも使うユーザ(モデル?)が登録されていないと保存されないらしく、ユーザの有無に関わらず保存されるようにこのボタンを押すらしい。Blenderの設計思想はよくわからん・・・。

とりあえず、下記のようになっていればOK。

f:id:cores0316:20160727030949p:plain

 

Action EditorかTimelineの緑色のラインをドラッグで動かして、「1」と表示されるところに移動する。

f:id:cores0316:20160727031930p:plain

これで準備完了だ。

 

歩く動作の基本姿勢となる、「気をつけ」のポーズを作る。

3D ViewをPose Modeに切り替えて、テンキーの1を押して正面からの視点にする。

f:id:cores0316:20160727032525p:plain

Arm_Upper_Rを右クリックで選択してRキーを押して、腕を下ろすような形にして左クリックで確定する。ちなみにもう一度Rキーを押すと別方向の回転もできる。

Arm_Upper_Lも同じようにする。

f:id:cores0316:20160727033612p:plain

これで完成。

 

この状態をキーフレームとして登録する。

まず、マスターボーン以外を選択した状態にする。Aキーを2回押して全部のボーンを選択した後、SHIFTキーを押しながらマスターボーンを右クリック2回でできる。

f:id:cores0316:20160727034402p:plain

その状態でIキーを押すと、Insert Keyframe Menuというメニューが出てくるので、その中からLocRotを選択する。これは選択したボーンのLocation(位置)とRotation(回転)を登録するという意味。

f:id:cores0316:20160727034802p:plain

 

すると、Dope Sheetの該当フレームにキーフレームが追加される。

f:id:cores0316:20160727035443p:plain

これで最初のポーズが完成。

 

次に、左足から踏み出すとして歩き始めのポーズを作る。

キーフレームは6あたりに移動しておく。

f:id:cores0316:20160727040604p:plain

ここからは、体全体を触ることになるので、いろんな角度から確認しつつ試行錯誤しながら作業する。

ArmやLegを動かすときは、ShoulderやHipもわずかに動かしてやると自然な感じに近づく。

 

こんな感じになった。

f:id:cores0316:20160727044013p:plain

右から見るとこんな感じ。

f:id:cores0316:20160727044109p:plain

Action EditorかTimelineの緑色のラインをドラッグすると、登録したポーズの間を補間した動きが見られるので、おかしな動きをしていないか確認する。

 

次は12フレームに移動して、手足を一番大きく開いたポーズを作る。

こんな感じになった。

f:id:cores0316:20160727045330p:plain

 

次は17フレームに移動して、基本姿勢に戻る前のポーズを作る。

こんな感じになった。

f:id:cores0316:20160727045622p:plain

 

次に、20フレームに移動して1フレーム目と同じポーズを作る。

登録したポーズはコピペができるので、その機能を使おう。

Action Editorの「Dope Sheet Summary」を右クリックすると、縦一列の◇がオレンジになるので、この状態でCtrl + Cキーを押す。

f:id:cores0316:20160727051016p:plain

次に、左クリックで緑色のラインを20のところにあわせて、Ctrl + Vキーを押すとペーストできる。

f:id:cores0316:20160727051622p:plain

 

これで半分の動作ができた。

緑色のラインを動かしてみて、おかしなところが無いかよく確認する。

 

後半のポーズは、反転ペースト?の機能を使って楽をする。

25フレームに、6フレームのポーズを反転してペーストしよう。

6フレームを選択してCtrl + Cキーを押して・・・

f:id:cores0316:20160727052523p:plain

25フレームに移動して、この状態でCtrl + SHIFT + Vキーを押すと・・・

f:id:cores0316:20160727052822p:plain

反転した状態でペーストされる。

f:id:cores0316:20160727053250p:plain

 

同じようにして、12フレームを31フレームに、17フレームを36フレームにコピー&反転ペーストしよう。

最後に、39フレームに基本姿勢と同じポーズを登録する。

 

緑色のラインを動かしてみて、おかしなところが無いかよく確認する。

問題なければ、これで完成だ。

 

Timelineを操作して再生してみよう。

Startに1、Endに39を設定して、右の再生ボタンを押すと再生が始まる。

f:id:cores0316:20160727054622p:plain

 

f:id:cores0316:20160727055220g:plain

まぁまぁの出来じゃなかろうか。

 

 

・待機アニメーションの作成

もう一つ、歩いていないときに再生されるアニメーションも作成しておく。

名前は「Idle」として、今回は特に凝ったものにせずただ6フレーム棒立ちするだけのものにした。

f:id:cores0316:20160727054256p:plain

 

 

ここまでの作業を保存しておく。

ウィンドウを閉じる前に、作成したアニメーションに対して「F」ボタンが押されているか確認すること。

 

次回は、ついにUnityの登場となる。

作成したものを取り込んで、Unityで動かしてみる。