Unity3D
Unity
Blender

Blenderで人型用のアニメーションを自作して、Unity上のモデルに適用するまでの流れ

はじめに

アニメーションを自作して動かしたい!と思い、一連の流れを記事にしてみました。
間違いや効率の良い方法などあればご指摘ください。

使用したツールのバージョン

  • Unity2018.1.1f1
  • Blender2.79

対象者

Unity初心者
アニメーション自作してキャラが動くという一連のステップをやってみたい方

Unity以外で必要なもの

  • Blender・・・無料で使えるDCCツール。モデリング、リギング、スキニング、アニメーションと3Dで必要な工程を一通りこなすことができます。MAYAとか3dmaxは、物凄くお値段するのでほぼ一択かと思います。

 こちらからダウンロードできます。

  • キャラクターの3Dモデル・・・AssetStoreから何かしらダウンロードしましょう。今回はユニティちゃんを使用しました。

ハマりどころと流れ

ユニティちゃんを直接Blenderでインポートしてアニメーションさせたい方もいるかと思います。ユニティちゃんをfbxで、Blenderにインポートすると、顔がやたらデカかったり、ボーンの向きが可笑しくなっていたりしました。Blenderにある程度精通している方でしたら、正常な状態に戻せるでしょうが、初心者はほぼ詰むのでインポートしてモデルをいじる作戦はやめておきましょう。

代わりに、Blender上で人型ボーンを作成し、それに直接アニメーションをつけることにします。

1 Blenderを起動
Bldenrを起動すると、下記画面になると思います。
スクリーンショット 2018-07-08 18.18.00.png

2 日本語表示に変更
スクリーンショット 2018-07-08 18.21.26.png
画面左上のFile->User Preferencesを押す。(MacならCMD+,でショートカット)

スクリーンショット 2018-07-08 18.28.38.png
SystemのInterNational Fontsにチェックを入れる。

スクリーンショット 2018-07-08 18.32.46.png
InterNational Fontsにチェックを入れたら、言語と翻訳が表示されるため、言語を日本語に設定、インターフェースとツールチップにクリックする。以上で、日本語化が完了。

3 人型ボーンを使えるようにするため、アドオンRigifyを有効化する。
スクリーンショット 2018-07-08 18.41.07.png
ユーザー設定->アドオン->リギング->Rigifyにチェックを入れる。

4 人型ボーンを追加
スクリーンショット 2018-07-08 18.46.57.png
追加->アーマチュア->Humanを選択すると、人型ボーンが追加されます。
初期から配置されている立方体が邪魔なので、ついでに削除しましょう。
立方体を選択後、Xキーで削除ができます。

5 ポーズモードへの切り替え
スクリーンショット 2018-07-08 19.01.01.png
ポーズをいじれる状態に切り替えます。
アウトライナーウィンドウ->metarig->ポーズを選択。
プロパティウィンドウの人型タブを選択します。
左下のモードがポーズモードに切り替わっていることを確認してください。
レイヤーは、ボーンの表示・非表示ができます。SHIFT押しながら全て選択し、表示状態にしましょう。

6 タイムラインの設定とキーフレーム挿入
スクリーンショット 2018-07-08 19.37.46.png
黄色い枠で囲まれたタイムラインウィンドウで作業をします。
バー上のメモリはアニメーションが何フレーム目かを表しています。緑色の棒が現在のフレーム位置です。
タイムラインウィンドウの初期フレームが、簡単なアニメーションにしては長いので終了を40に変更します。
続いて、Aキーを押して、ボーンを全選択状態にします(水色で囲まれた状態になります。オレンジ色の場合は、オブジェクトとして選択されているため、5.ポーズモードの切り替え操作でポーズモードに戻して、再びAキーを押してください。)
Iキーを押すと、キーフレーム挿入メニューが出ますので、位置/回転を選択し、キーフレームを挿入します。キーフレームは、あるフレーム時点のポーズのスナップショットになります。
キーフレーム挿入後、キーフレームが打ち込まれたフレーム上に黄色の棒が表示され、アウトライナーウィンドウ上にmetarigActionというアニメーションが作成されます。
以降は、何フレーム目にこのポーズという感じでキーフレームを登録することによってアニメーションを作成します。

7 ポーズの変更
スクリーンショット 2018-07-08 20.36.20.png

ボーンを回転させて、ポーズを作成します。
動かしたいボーンを選択して、Rキーで回転できます。
Rキーを押した後、X、Y、Zの名キーを押すことで各軸に対して回転させることができます。
ポーズを作成した後は、Aキーで全選択、Iキーで位置/回転を選択し、キーフレームを挿入します。ポーズの遷移は再生ボタンを押して確認しましょう。

8 アニメーションを完成させる。
ポーズ変更->キーフレームの挿入->再生を繰り返し、アニメーションを完成させます。
簡単なアニメーションの場合は、初期ポーズ、中間ポーズ、終了時のポーズでキーフレームを作成すると、手間がかからずいい感じのアニメーションになります。
metarigAction.mov.gif

9 アニメーションのエクスポート
スクリーンショット 2018-07-08 20.21.26.png
アニメーションのExport前にアニメーションの名前を変更します。
アウトライナーウィンドウ->metarig->アニメーション下にあるmetaRigActionをgesture1に変更しました。
続いて、ファイル->エクスポート->FBXを選択して、アニメーションタブを選択して、任意のフォルダにエクスポートします。
スクリーンショット 2018-07-08 20.54.58.png

10 エクスポートしたfbxをUnityにインポート
エクスポートしたFBXファイルを、Unityエディタ上にドラッグ&ドロップしてインポートします。
スクリーンショット 2018-07-08 20.59.41.png

11 アニメーションクリップの設定を変更
人型アニメーションに適用できるように、アニメーションクリップの設定を変更します。
スクリーンショット 2018-07-08 21.02.10.png
自作したアニメーションのInepector上でEditを押します。
スクリーンショット 2018-07-08 21.02.56.png
RigタブのAnimationTypeをGenericからHumanoidに変更してApplyボタンを押します。
これで、他の人型モデルでアニメーションできる状態になりました。

12 モデルにアニメーションを適用
モデルに作成したアニメーションを適用しましょう。
スクリーンショット 2018-07-08 21.54.14.png
ProjectウィンドウよりCreate->Animator Controllerを選択し、Animator Controllerを作成。

スクリーンショット 2018-07-08 21.56.50.png
作成されたAnimator Controllerを押してAnimatorウィンドウを開く。

スクリーンショット 2018-07-08 21.58.03.png
Create State->Emptyを選択し、New Stateを作成する。

スクリーンショット 2018-07-08 22.00.15.png
New StateのInspector上でMotionに自作したアニメーションクリップを選択。

スクリーンショット 2018-07-08 22.06.04.png
最後にScene上にモデルを配置し、AnimatorコンポーネントにAnimator Controllerを割り当てましょう。

ゲームを再生して、正しくアニメーションが動作することを確認しましょう。

結果

gesture.mov.gif

unity.png

この記事のコンテンツは、『ユニティちゃんライセンス』で提供されています。