Unityで簡単にアニメーションを作成する方法をまとめました

19/02/03 14:51:34     19/02/17 19:59:56

Unityアニメーション

Unityはアニメーションを自由かつ簡単に作れる便利なプラットフォームです。GUIで多くのことが実現でき、細かい部分はプログラミングしていく使い方になります。ただし、高度なアニメーションを作るためには別途ツールが必要です。

それでも思い通りに高度なアニメーションを作ろうと思えばツールの力だけでなくプログラミングスキルが必須なので、Unityの基本的な機能からアニメーションのプログラミングに慣れていくことをおすすめします。

このページでは、Unityで基本的なアニメーションを作成する方法について紹介します。

アニメーションの設定方法

Unityでのアニメーションは、オブジェクトに対して設定します。オブジェクトの設定をしたら次に、[Window]->[Animation]からアニメーションウィンドウを開きます。ここから設定を行い、実行すると実際の動きを確認することができます。

初音ミクなどの高度なアニメーションを動かしたいところですが、人型はオブジェクトを作りこむところだけでなく、当然動かすのも難しいです。単純な図形のようにGUIだけで設定するのが難しく、なおかつプログラミングするにしても座標指定しなければならない部分が多く、なおかつ数字がずれると意図していない変な動きになります。

少なくとも「どの設定にしたどっちに動くんだっけ」と悩んでいる状態で複雑なオブジェクトを扱うのは危険です。思い通りにいかなくて挫折する可能性が高いでしょう。そこで、まずは単純なオブジェクトから練習します。

3つのキューブを用意

有名かつ簡単な練習方法としては、三色のキューブを用意して角度をいじる方法です。オブジェクトを用意する方法は以下のようになります。プロジェクトの新規作成、もしくはシーンの新規作成を行い、「作成」メニューから「3Dオブジェクト」→「キューブ」を3回実行します。

次にインスペクターから各キューブを設定し、z軸で位置をずらしていきます。どの程度ずらすかは自由ですが、真ん中のキューブのz軸を0とすると、後の2つを2と-2に設定するとバランスが良いです。

またキューブの名前もなんでも良いのですが、Red、Blue、Greenなどの色の名前にしておき、さらに後から色を付ければわかりやすいかと思います。キューブはマテリアルから作成し、インスペクターから色を付けることができます。

色を付ける項目は「アルベルト」で、四角をクリックすれば色を選択可能です。3つのキューブとも色を設定していけば、三色のキューブが並びます。

アニメーションの作成

まだアニメーションの設定画面がない場合、「シーン」タブで右クリックし、「アニメーション」タブを追加します。オブジェクトを選択するとインスペクターにオブジェクトの設定内容が表示されるので、そこにアニメーションをドラッグ&ドロップすると操作できるようになります。

アニメーションとオブジェクトに限った話ではないのですが、Unityでは各設定を重ねるという基本概念があります。アセットもあって一か所に設定をすべて固めることはできないのですが、各所で設定したものを重ねることで、すべてを反映させるということです。

そして何と何を重ねるのかはだいたい決まっているのですが、それを知らない、または忘れた、といったこともあるかと思います。しかし直感的に操作できる点がUnityの良いところで、適当にドラッグ&ドロップすればうまくいったりもします。

もちろん基本的に何と何を重ねるかは把握しておく必要があるのですが、詳細を忘れた場合適当にドラッグ&ドロップしてみるのがおすすめです。間違っても直すのは簡単なので、きっちり調べるよりもある程度直感的に操作してみると時間短縮になり、なおかつ調べる作業が嫌になることも少ないかと思います。

アニメーションの追加は「プロパティーを追加」ボタンから設定可能です。こういった設定方法はUnityだけでなく、他の音楽編集ツールや動画編集ツールなどでも同じかと思います。

なので、そういったソフトに慣れている人なら直感的にGUI操作して問題ないでしょう。仮に他のソフトの使用経験がなくても、操作しているうちに慣れてくるかと思います。特にプロパティーについては項目が多いので、最初からすべてきっちり理解するのはかえって時間が掛かります。

操作しているうちにわかってくるので、よくわからなくても動かしてみましょう。動かしてみてもよくわからないものについてのみ調べると良いかと思います。

アニメーションとアニメーターの違い

アニメーションとアニメーターが混同されることがありますが、特に問題はありません。特に違いを気にしたことのない方はそれで良いかと思いますが、もしかするとどう違うのかがわからず混乱されている人もいるかもしれません。

実際人によってアニメーションとアニメーターを混同して解説していることもあり、結果的に用語があべこべに使われています。違いとしては、アニメーションは実行した際に動くもの、アニメーターはアニメーションをコントロールするものです。

つまり、アニメーターを使用してアニメーションを作成する、と考えるとわかりやすいでしょう。しかしネットの解説等では混同して使われていることが多いため、自分のなかで置き換えて考えると混乱せずに済みます。

また、アニメーターは別名をアニメーションコントローラーと言います。このことからも、アニメーターがアニメーションを制御していることがわかります。

アニメーション作成に便利なPlayableAPI

アニメーションはAnimationControllerやその他のツールから作成しますが、上で紹介してきた方法は一つ一つのアニメーションを作成する方法です。これでももちろん良いのですが、複数のアニメーションを結合する、追加する、といったことも可能です。

そこで便利なのがPlayableAPIで、これを使用するとアニメーションを追加編集していくことができます。ただし使いこなすためにはスクリプトを書かなければならないので、今回は詳細は割愛します。

重要なのはこういったツールもあると知っておくことで、概念から慣れていくことです。アニメーションの作成はツールが便利で、なおかつスクリプトを書く際もほとんどもともと用意されているクラスを使えば実装できます。

そのため自分でゼロから機能を作るようなことはほぼないのですが、ツールやクラスが便利な分どう使いこなせば良いのか、全体がどうなっているのか、ということがわからなくなりがちです。

またネットで検索しても断片的な方法が解説されている場合が多いため、個々の作りこみの方法を学ぶと同時に全体のつながりがどうなっているのかを把握するようにしてください。

まとめ

プログラミングの基礎学習では基礎から順に確実に積み上げていくような勉強方法が一般的ですが、ゲームプログラミングについてはいろいろな機能を試しつつ、全体を捉えていく勉強方法が良いでしょう。

基本的にツールとクラスをいかに使いこなすかが重要なため、それぞれのものの使い方をマスターすることと関連性を理解することが大切になるからです。アニメーションについてもGUIツールとクラスオブジェクトを使いこなせばゼロから実装する必要はありません。

 

【Unity関連記事】
▼Unityの基礎編
・ 【unityのフリーランス求人・案件情報】エンジニア需要や開発単価、未経験でもいける?
・ 【unity入門】ゲーム開発だけじゃない、Unityで出来ること

▼Unityの外部アセット、リソース編
・ UnityでMMDモデルを自由自在に動かしてみよう!
・ Unity adsを使って簡単に広告を導入しよう
・ Unityのアセットストアの上手な使い方
・ Unityで作られているARアプリをまとめてみました

▼Unityのコンポーネント編
・ Unityのrigidbodyを使って物理演算を導入してみよう
コードを使わずにUnityでキャラ追従のカメラを作る方法
・ (この記事)Unityで簡単にアニメーションを作成する方法をまとめました
・ Unityでオブジェクトを回転させる方法をわかりやすくまとめました
・ Unityのtransformを使ってオブジェクトの座標や回転を操作する
・ Unityのアニメーターを簡単に作成する方法まとめ
・ UnityのShaderの解説と使い方まとめました
・ Unityで「当たり判定」(衝突判定)を付ける方法
・ Unityのgetcomponentの上手な使い方と使用時の注意点まとめ
・ Unityでキャラの移動を制御する方法まとめ
Unityのraycastを使って出来ることをまとめました

▼Unityのデフォルト機能、ゲーム製作編
blenderで作ったオブジェクトをUnityで組み込んでみよう
・ Unityのコルーチンとは?使い方をまとめました
Unityで作られているRPGゲームを作るための6つのステップ
・ Unityのパーティクルを使って演出できるエフェクト例
・ UnityでのUIデザインの基礎をまとめてみました
Unityのcloud buildの便利な点をまとめました
・ Unityを使って半日でFPSゲームを作ってみよう

人気記事

編集部おすすめ記事

この記事を読んだ人はこんな記事を読んでいます

案件探しやフリーランスになるための相談する