第3回目は前回にちょこっと書いた「アニメーション」についてです。 昨日今日、色々と試してみました。 前回:【Unity NGUI】Tween機能の利用する・Spriteの画像を変更する | albatrus.com
[UISprite Animation]を利用する
まずは、[UISprite Animation]というスクリプトを使う方法です。 これを利用すれば、簡単にアニメーションが実装できます。
- Framerate:画像の切り替わる速度
- Name Prefix:アニメーションをさせる画像の頭文字
- Loop:繰り返すかどうか
Name Prefix
恐らくアニメーションで利用する画像は、同じような名前をつけているはずです。
例
[Name Prefix]で[kan-jump]と指定すれば、順番に呼び出してくれます。
通常通りの方法
NGUIにある特別な機能を利用せずに、一般的な方法でアニメーションをさせます。
- テクスチャアトラスを作成
- SpriteEditorで画像を切り分ける
- Animation Windowより、アニメーションを作成する
- Animatorコンポーネントを利用してアニメーションを再生する
では簡単に説明します。
テクスチャアトラスを作成
これはNGUIで作成したテクスチャアトラスは利用できないので別途作成します。(もし、出来る方法があれば教えて下さい) 画像の方向は実際に利用する向きで配置をします。
SpriteEditorで画像を切り分ける
テクスチャアトラスを画像ごとに切り分けます。
[SpriteMode]をMultipleに切り替えます。 その後、SpriteEditorを開きます。
SpriteEditor
Typeから、切り分け方を選びます。 Sliceを押して実行します。
Animation Windowより、アニメーションを作成する
テクスチャアトラスの画像からアニメーションを作成します。 まずは適当にUnity上に画像を追加します。(これは後で削除するので何でもいいです)
[Window]->[Animation]を開きます。
[Animation]の画面にある[add curve]を押して下さい。 そうすると、[Animator]が作成されます。これを実際にオブジェクトで利用します。
ただ、このままだと何もアニメーションがないので、アニメーションを作成します。 ドラッグアンドドロップで画像を並べてアニメーションにしていきます。
複数アニメーションがある場合は、個別に作成をしていきます。
Animatorコンポーネントを利用してアニメーションを再生する
これまでの作業でアニメーションの準備が完了しました。 最後に、オブジェクトに必要なコンポーネントを追加をしていきます。
- Animator
- SproteRenderer
これでUnityを再生してみるとアニメーションが動くはずです。
最後に
NGUIでは、細かなアニメーションの管理ができない感じなので、Animotorを使った方法の方が良い感じがします。 この辺り、もっと良い方法があれば教えて欲しい部分ですね。 次は、このアニメーションについてもう少し勉強をしてみます。
Unityによる2Dゲーム開発入門 ~プログラミング初心者がゲームを公開する最短コース 中島 安彦 技術評論社 売り上げランキング : 137730 Amazonで詳しく見る |