トップ > 簡単なアニメーション3DCGの制作 > 変形するアニメーションの制作 >
シェイプキーによるアニメーション(その2)

  

アニメーションをつける(続き)

前の記事の『シェイプキーによるアニメーション』からの続きです。 この記事では、作成したシェイプキーの動作確認とキーフレームの登録を行います。

作成したシェイプキーの動作確認

作成したシェイプキーの動作を確認してみましょう。 シェイプキーの適用はオブジェクトモードで実施する必要があります。 キーボードのTabキーを押してください。

1. 形状が立方体に戻る
1. 形状が立方体に戻る

上図のようにオブジェクトモードに切り替えると、メッシュの形状が立方体に戻ります。 これは、シェイプキー "Pyramid" と "Expand" のキー値が 0(ゼロ) になっているためです。

2. キー値が 0(ゼロ) になっている
2. キー値が 0(ゼロ) になっている

上図のようにシェイプキー "Pyramid" と "Expand" のキー値は 0(ゼロ) です。 そのため、『四角錐の形状への変形』の影響も、『底面が2倍に広がった形状への変形』の影響も受けていません。 結果、基本の形状である立方体のままとなっています

では、シェイプキー "Pyramid" の動作から確認しましょう。 シェイプキーの一覧からシェイプキー "Pyramid" を選択します。

3. シェイプキー "Pyramid" を選択する
3. シェイプキー "Pyramid" を選択する

上図のようにシェイプキー "Pyramid" を選択します。 なお、この時点では、シェイプキーを選択してもメッシュの形状は変形しません。 すでに説明したように、これは、シェイプキー "Pyramid" と "Expand" のキー値が 0(ゼロ) になっているためです。

  
エディットモードでは、キー値に関係なく選択中のシェイプキーに記録されている形状に変形します。

ではここで、シェイプキーの一覧の下にあるValueという項目に注目してください

4. 選択中のシェイプキーのキー値と連動する
4. 選択中のシェイプキーのキー値と連動する

上図のようにシェイプキーの一覧の下にValueという項目があります。 この項目もキー値であり、選択中のシェイプキーのキー値と連動しています片方を操作すればもう片方の値も変化します

  
キー値は 0.0 から 1.0 までの範囲の値を持つことができます。

それでは、キー値の変更に伴いメッシュが変形することを確認します。 キー値が 0.0 では形状が立方体に、1.0 に近づくにつれ四角錐の形状に変形することを確認します。 Valueをマウスの左ボタン(マウスの左ボタン)で右にドラッグするのがいいでしょう。

5. キー値が 1.0 で四角錐の形状に変形する
5. キー値が 1.0 で四角錐の形状に変形する

上図のようにキー値が 1.0 になると四角錐の形状になります

続いて、シェイプキー "Expand" での変形を確認します。 シェイプキーの一覧からシェイプキー "Expand" を選択します。

6. シェイプキー "Expand" を選択する
6. シェイプキー "Expand" を選択する

上図のようにシェイプキー "Expand" を選択します。

同じように、キー値を変更してメッシュの形状が変形することを確認します。 Valueをマウスの左ボタン(マウスの左ボタン)で右にドラッグし、底面が広がることを確認しましょう

7. キー値が 1.0 で底面が広がった 形状に変形する
7. キー値が 1.0 で底面が広がった 形状に変形する

上図のようにキー値が 1.0 になると底面が広がった形状になります

では、キー値を 0.0 に戻しておきましょう。 シェイプキー "Pyramid" と "Expand" の両方のキー値を0.0に戻します。

8. キー値を 0.0 に戻す
8. キー値を 0.0 に戻す

上図のようにシェイプキー "Pyramid" と "Expand" の両方のキー値を0.0に戻します。

キーフレームを登録する

では、1フレーム目のキーフレームを登録しましょう。 1フレーム目は、シェイプキー "Pyramid" のキー値が 0.0、シェイプキー "Expand" のキー値も 0.0 のキーフレームを登録します。

まず、対象フレームを選択します。 これから1フレーム目での作業を行いますので、対象フレームを 1 にする必要があります

1. 対象フレームを 1 にする
1. 対象フレームを 1 にする

上図のように対象フレームを 1 にします。

続いて、立方体のメッシュを選択します。

2. オブジェクトモードで立方体のメッシュを選択する
2. オブジェクトモードで立方体のメッシュを選択する

上図のようにオブジェクトモードで立方体のメッシュを選択します

続いて、キーフレームを登録します。 まずは、シェイプキー "Pyramid" のキー値のキーフレームを登録します。 シェイプキーの一覧からシェイプキー "Pyramid" を選択します

3. シェイプキー "Pyramid" を選択する
3. シェイプキー "Pyramid" を選択する

上図のようにシェイプキー "Pyramid" を選択します。

では、キーフレームを登録しましょう。

4. Valueを右クリックする
4. Valueを右クリックする

上図のようにValueをマウスの右ボタン(マウスの右ボタン)でクリックします。

5. 1フレーム目のシェイプキー "Pyramid" のキー値のキーフレームを登録
5. 1フレーム目のシェイプキー "Pyramid" のキー値のキーフレームを登録

上図のように"Value"というタイトルのメニューが表示されますので、"Insert Keyframe"を実行します

これで、1フレーム目にシェイプキー "Pyramid" のキー値のキーフレームが登録されました。 続けて、同じく1フレーム目にシェイプキー "Expand" のキー値のキーフレームを登録しましょう。 シェイプキーの一覧からシェイプキー "Expand" を選択します

6. シェイプキー "Expand" を選択する
6. シェイプキー "Expand" を選択する

上図のようにシェイプキー "Expand" を選択します。

では、シェイプキー "Expand" のキー値のキーフレームを登録します。

7. Valueを右クリックする
7. Valueを右クリックする

上図のようにValueをマウスの右ボタン(マウスの右ボタン)でクリックします。

8. 1フレーム目のシェイプキー "Expand" のキー値のキーフレームを登録
8. 1フレーム目のシェイプキー "Expand" のキー値のキーフレームを登録

上図のように"Value"というタイトルのメニューが表示されますので、"Insert Keyframe"を実行します

これで、1フレーム目にシェイプキー "Expand" のキー値のキーフレームが登録されました。


続いて、50フレーム目のキーフレームを登録します。 50フレーム目は、シェイプキー "Pyramid" のキー値が 1.0、シェイプキー "Expand" のキー値は 0.0 のままのキーフレームを登録します。

ただし、シェイプキーのキー値の変更はまだ行わないでください。 現在は、1フレーム目が選択されていますので、まずは対象フレームを 50 にします

9. 対象フレームを 50 にする
9. 対象フレームを 50 にする

上図のように対象フレームを 50 にします。

次に、シェイプキーの一覧からシェイプキー "Pyramid" を選択します

10. シェイプキー "Pyramid" を選択する
10. シェイプキー "Pyramid" を選択する

上図のようにシェイプキー "Pyramid" を選択します。

続いて、シェイプキー "Pyramid" のキー値を 1.0 に変更します。

11. キー値を 1.0 に変更する
11. キー値を 1.0 に変更する

上図のようにキー値を 1.0 に変更します。 もちろん、シェイプキーの一覧のキー値を直接編集しても問題ありません

では、キーフレームを登録します。

12. Valueを右クリックする
12. Valueを右クリックする

上図のようにValueをマウスの右ボタン(マウスの右ボタン)でクリックします。

13. 50フレーム目のシェイプキー "Pyramid" のキー値のキーフレームを登録
13. 50フレーム目のシェイプキー "Pyramid" のキー値のキーフレームを登録

上図のように"Value"というタイトルのメニューが表示されますので、"Insert Keyframe"を実行します。 これで、50フレーム目にシェイプキー "Pyramid" のキー値のキーフレームが登録されました。

続いて、シェイプキー "Expand" のキー値のキーフレームを登録します。 シェイプキー "Expand" のキー値は1フレーム目と同じとしますので、キー値を変更する必要はありません

14. シェイプキー "Expand" を選択する
14. シェイプキー "Expand" を選択する

上図のようにシェイプキー "Expand" を選択します。

では、シェイプキー "Expand" のキー値のキーフレームを登録します。

15. Valueを右クリックする
15. Valueを右クリックする

上図のようにValueをマウスの右ボタン(マウスの右ボタン)でクリックします。

16. 50フレーム目のシェイプキー "Expand" のキー値のキーフレームを登録
16. 50フレーム目のシェイプキー "Expand" のキー値のキーフレームを登録

上図のように"Value"というタイトルのメニューが表示されますので、"Insert Keyframe"を実行します。 これで、50フレーム目にもシェイプキー "Expand" のキー値のキーフレームが登録されました。


最後に、100フレーム目のキーフレームを登録します。 100フレーム目は、シェイプキー "Pyramid" のキー値が 1.0、シェイプキー "Expand" のキー値も 1.0 のキーフレームを登録します。

まずは、対象フレームを 100 に変更します

17. 対象フレームを 100 にする
17. 対象フレームを 100 にする

上図のように対象フレームを 100 にします。

次に、シェイプキー "Pyramid" のキー値のキーフレームを登録します。 シェイプキー "Pyramid" のキー値は50フレーム目と同じとしますので、キー値を変更する必要はありません

18. シェイプキー "Pyramid" を選択する
18. シェイプキー "Pyramid" を選択する

上図のようにシェイプキー "Pyramid" を選択します。

では、シェイプキー "Pyramid" のキー値のキーフレームを登録します。

19. Valueを右クリックする
19. Valueを右クリックする

上図のようにValueをマウスの右ボタン(マウスの右ボタン)でクリックします。

20. 100フレーム目のシェイプキー "Pyramid" のキー値のキーフレームを登録
20. 100フレーム目のシェイプキー "Pyramid" のキー値のキーフレームを登録

上図のように"Value"というタイトルのメニューが表示されますので、"Insert Keyframe"を実行します。 これで、100フレーム目にもシェイプキー "Pyramid" のキー値のキーフレームが登録されました。

続けて、シェイプキー "Expand" のキー値のキーフレームを登録しましょう。 シェイプキーの一覧からシェイプキー "Expand" を選択します。

21. シェイプキー "Expand" を選択する
21. シェイプキー "Expand" を選択する

上図のようにシェイプキー "Expand" を選択します。

続いて、シェイプキー "Expand" のキー値を1.0に変更します。

22. キー値を 1.0 に変更する
22. キー値を 1.0 に変更する

上図のようにキー値を 1.0 に変更します。

では、シェイプキー "Expand" のキー値のキーフレームを登録します。

23. Valueを右クリックする
23. Valueを右クリックする

上図のようにValueをマウスの右ボタン(マウスの右ボタン)でクリックします。

24. 100フレーム目のシェイプキー "Expand" のキー値のキーフレームを登録
24. 100フレーム目のシェイプキー "Expand" のキー値のキーフレームを登録

上図のように"Value"というタイトルのメニューが表示されますので、"Insert Keyframe"を実行します。 これで、100フレーム目にもシェイプキー "Expand" のキー値のキーフレームが登録されました。

アニメーション出力

では、アニメーションを出力しましょう。 手順は、簡単なアニメーション3DCGの制作 > 変形しないアニメーションの制作 > マテリアル設定によるアニメーション - アニメーション出力 -と同様です。

制作例

以下は制作例です。 最初に紹介したものと同じ映像です。

制作例 - シェイプキーによるアニメーション -
  

補足しておきたいこと

シェイプキーに関してもう少し補足しておきます。

シェイプキーには相対シェイプキーと絶対シェイプキーがある

シェイプキーには、相対シェイプキーと絶対シェイプキーがあります。 今回の例で使用したのは、相対シェイプキーです。

基本の形状があり、それを基準に複数パタンに変形させる場合には、相対シェイプキーの利用が適しています。 今回の例では、立方体の形状を基本とし、四角錐の形状にも底面が広がる形状にも変形させました。

一方、絶対シェイプキーは、複数のシェイプキーを順に適用して変形させる場合に適しています。 相対シェイプキーとは違い、キー値はありません。 代わりにフレーム数のデータ項目を持っており、このフレーム数を過ぎると次のシェイプキーの変形へと進みます。

つまり、時間の経過とともに様々に変形することになります。 そのため、絶対シェイプキーでは、『キー値』ではなく『経過時間』のキーフレームを登録します。

なお、絶対シェイプキーへ切り替える手順は簡単で、シェイプキーの一覧の下にあるRelativeチェックボックスをオフにするたけです。

  
1つのオブジェクトに対して絶対シェイプキーと相対シェイプキーを混在させることはできません。 Relativeチェックボックスを操作すると、そのオブジェクトの全てのシェイプキーの同項目も連動して同じ値になります。

ラティスの頂点もシェイプキーで移動することができる

今回の例ではメッシュを変形させましたが、ラティスの頂点もシェイプキーで移動させることができます。 つまり、ラティスそのものを変形させることができるということです。

  

まとめ

シェイプキーには、絶対シェイプキーと呼ばれるものもあります。 複数パタンを順に変形させるなら絶対シェイプキーを使います。

絶対シェイプキーでは、各シェイプキーが『フレーム数』のデータ項目を持っており、このフレーム数を過ぎると次のシェイプキーの変形に進みます。 また、シェイプキー共通の『経過時間』のデータ項目を持っており、時間の経過によって変形が進みます。 アニメーションのための情報としては、経過時間のキーフレームを登録します。

メニュー