ヒューマノイド以外のアニメーション
アニメーションクリップのループ

アニメーションの分割

アニメーション化されたキャラクターは一般に多くのさまざま動作があり、ゲームの中で異なる状況下で使用されます。これらの動作は アニメーションクリップ と呼ばれます。例えば、歩く、走る、ジャンプする、投げる、死ぬ、などに別々のアニメーションが必要なこともあります。モデルがアニメーションされた方法によって、これら別々の動きを別々のアニメーションクリップとしてインポートすることもあれば、動作の後に次の動作が来るような 1 つのクリップとしてインポートすることもあります。 1 つのクリップしかない場合、クリップは Unity 上でアニメーションシーケンスのコンポーネントとして 分割 する必要があり、ワークフローに追加処理が必要になります。

事前に分割されたアニメーションつきモデルでの作業

作業するうえで、もっともシンプルなモデルの種類は、事前に分割されたアニメーションを含むものです。こういうアニメーションがある場合、Animation Importer InspectorAnimations タブは次のようになります。

使用可能なクリップのリストが表示され、再生ボタンを押すと プレビューウィンドウ (Inspector の下の方) でプレビューできます。クリップのフレーム範囲は必要であれば編集することができます。

分割されてないアニメーションつきモデルでの作業

クリップが 1 つの連続したアニメーションとして提供されているクリップのモデルの場合は、Animation Importer InspectorAnimations タブは次のようになります。

このようなケースでは、各アニメーションシーケンス (歩く、ジャンプするなど) に対応するフレーム範囲を定義することができます。新規のアニメーションを作成するには (+) を押して、表示されたフレームの範囲から 1 つ選択します。

例えば、

  • Walk (歩く) アニメーションはフレーム 1 - 33
  • Run (走る) アニメーションはフレーム 41 - 57
  • Kick (キックする) アニメーションはフレーム 81 - 97
アニメーションの Import Settings オプション
アニメーションの Import Settings オプション

インポート設定 (Import Settings) では、 Split Animations テーブルを使ってアセットファイルのどのフレームがどのアニメーションクリップを構成しているかを Unity に知らせます。ここで指定した名前はゲームでアクティベートするのに使用されます。

アニメーションインスペクターの詳細については アニメーションクリップを参照してください。

Mecanim を使用して Unity のオブジェクトとプロパティーをアニメーション化する

Unity のアニメーションウィンドウを使用して、オブジェクトやコンポーネントのプロパティーをアニメーション化するアニメーションクリップを作成することができます。その後、これらのアニメーションクリップは、キャラクタアニメーションのような外部のアニメーションクリップとまったく同じ方法でステートマシンに配置できます。たとえば、カメラ の動き、ライト の色、スプライト アニメーションの個々のフレーム、スクリプト のパブリックプロパティーをアニメーション化できます。

キャラクターや他のゲームオブジェクトにアニメーションを設定するには、以下の手順で行います。

  • New Animator Controller を作成します。
  • アニメーターコントローラーを編集するために アニメーターコントローラーウィンドウ を開きます。
  • 希望のアニメーションクリップを アニメーターコントローラーウィンドウ にドラッグします。
  • Hierarchy ビュー上にモデルアセットをドラッグします。
  • アセットの Animator コンポーネント にアニメーターコントローラーを加えます。

複数のモデルファイルを用いたアニメーションのインポート

アニメーションをインポートするもう 1 つの方法は、Unity がアニメーションファイルに対して用意している命名規則に従うことです。別個のモデルファイルを作成し、‘モデル名@アニメーション名.fbx’ となるように命名します。例えば、“goober” という名のモデルがある場合、休止 (idle)、歩行(walk)、ジャンプ(jump)、壁ジャンプ(walljump) のアニメーションを、“goober@idle.fbx”、“goober@walk.fbx”、“goober@jump.fbx”、“goober@walljump.fbx” というファイル名で、個別にインポートすることができます。たとえ元のファイルがメッシュデータつきでエクスポートされていたとしても、これらのファイルのアニメーションデータのみが使用されます。

アニメーション化したキャラクターの 4 つのアニメーションファイルの例 ( .fbx 拡張子が Unity 上では表示されてないことに注意してください)
アニメーション化したキャラクターの 4 つのアニメーションファイルの例 ( .fbx 拡張子が Unity 上では表示されてないことに注意してください)

Unity は 4 つのファイルすべてを自動的にインポートし、@ 記号がないファイルにすべてのアニメーションを集めます。上の例では、goober.mb ファイルが idle、jump、walk、wallJump を自動的に参照するように設定されています。

FBX ファイルの場合、希望するキーフレームのファイルをエクスポートすると (FBX のダイアログでアニメーションを有効にしてください)、アニメーション名のないモデルファイル (例えば goober.fbx) と、goober@_アニメーション名_.fbx のように命名された 4 つのクリップが、簡単にエクスポートできます。

ヒューマノイド以外のアニメーション
アニメーションクリップのループ