MRが楽しい

MRやVRについて学習したことを書き残す

Unityで基本変形(移動・回転・スケール)のアニメーションを作成する その1(アニメーションクリップの設定)

本日は Unity の技術調査枠です。
基本変形(移動・回転・スケール)のアニメーションを作成する方法についてまとめます。

アニメーションクリップの設定

基本変形(移動・回転・スケール)のアニメーションを作成するには「アニメーションクリップ」を利用します。
例えば、以下の作成した Cube オブジェクトに拡大縮小のアニメーションを設定してみます。
f:id:bluebirdofoz:20180916020701j:plain

Cube オブジェクトを選択した状態で、Window -> Animation をクリックします。
f:id:bluebirdofoz:20180916020707j:plain

Animation ウィンドウが開くので、[Create]をクリックします。
f:id:bluebirdofoz:20180916020715j:plain

保存ダイアログが開くので、アニメーションファイルの保存先を指定して[保存]をクリックします。
f:id:bluebirdofoz:20180916020720j:plain

すると以下のファイルの保存と設定が自動で行われます。
1.新規の AnimatorController ファイルの作成
2.新規の Animation ファイルの作成
3.Cube オブジェクトに[Animator]コンポーネントの追加
4.[Animatior]コンポーネントのコントローラに作成した AnimatorController の設定
f:id:bluebirdofoz:20180916020728j:plain

因みに新規作成した AnimatorController には Animation への自動遷移が既に設定されています。
つまり、Animation ファイルを編集するだけで Cube オブジェクトがアニメーションする準備が整っています。
f:id:bluebirdofoz:20180916020736j:plain

実際に拡大縮小のアニメーションを作成してみます。
Animation ウィンドウの[Add Property]をクリックすると、プルダウンが表示されます。
ここには編集可能な Cube にアタッチされたコンポーネントの一覧が表示されます。
スケールの変更を設定するため、[Add Property] -> [Transform] -> [Scale] の[+]ボタンをクリックします。
f:id:bluebirdofoz:20180916020743j:plain

すると Scale 要素が追加されました。
[Samples]がアニメーション全体のフレーム数です。デフォルトでは 60 が設定されています。
アニメーションのフレーム数を変更したい場合はこの数値を編集します。
アニメーション全体の再生時間を変更したい場合は最終キーフレームの位置を変更します。
f:id:bluebirdofoz:20180916020750j:plain

では試しに、Cube が拡大縮小されるアニメーションを作成します。
ウィンドウ上部にある数値を[20]に設定し、20 フレーム目に編集箇所を移動します。
スケールの各種値を 2 に変更します。
最後に[+]のマークが書かれた[Add Keyframe]ボタンをクリックします。
f:id:bluebirdofoz:20180916020756j:plain

この状態で試しに動かしてみます。[再生]ボタンをクリックします。
すると、Cube オブジェクトが拡大縮小を行うことが確認できます。
f:id:bluebirdofoz:20180916020803g:plain

同じ手順でキーフレームを増やすことで、アニメーションを作り込んでいきます。
f:id:bluebirdofoz:20180916020811j:plain

アニメーションウィンドウを閉じ、Unity の[再生]ボタンを押してみます。
シーンの再生と共に Cube オブジェクトがアニメーションしました。成功です。
f:id:bluebirdofoz:20180916020818g:plain

因みにアニメーションを再編集したい場合は、以下の手順で再編集可能です。
1.対象のオブジェクトを選択する。
2.メニューから Window -> Animation を開く。
3.リストから編集対象の Animation ファイル名を選択する。
f:id:bluebirdofoz:20180916020827j:plain

次は設定の応用としてアニメーションカーブの利用をまとめます。
bluebirdofoz.hatenablog.com