近年の3DCGでのアニメーション・モーションの作り方は大きく分けて4つあります。それぞれ紹介していきます。
キーフレームアニメーション(手付けアニメーション)
これがCGにおける基本的な考え方です。2Dでも一緒です。
キーフレームと呼ばれる動きの要所(人間が設定するもの)を付けていき、その間はコンピュータが補間してくれます。手書きのアニメーションで言う、原画(キー)と動画(補間)の違いみたいなものです。
こんな感じに動きの要所を設定してあげると、その間は計算して補間してくれます。
メリット
- 全てのCGアニメーションにおいての基本的な考え方はこれです。
- 他の手法を使っても、最終的な微調整は手付けで行ったりします。
- いわゆる「アニメーション的な動き」を作るなら、この手法です。
- 一番自由度が高いですし、大体何でも動かせます。
デメリット
- CG的な自動化技術で言えば、昔からあまり変わってない手法です。ツールとかは格段に使いやすくなっていますが。
- CGアニメーションを手付けで付けるという作業は非常に時間がかかりますし、慣れや技術も必要です。
ソフトや必要な機材
統合ソフトやアニメーションソフトなら必ず付いています。
モーションキャプチャー
「実際の現実の動きを専用の機材で取って、それをコンピュータ上で使う」というものです。わかりやすいところだと、キネクトですね。最近のリアル系ゲームの人間の動きは大体この手法で作られています。
個人で自宅とかでやるならキネクトでモーションキャプチャーはできます。いい例はMMDです。
メリット
- リアルな動きを付けたい場合は、これが一番です。 手付けでは到底できないような細かい動きまで取ってくれます。
- プロの3Dアニメーターでも、相当な実力を持つ人でないと、リアルな動きを作ることは難しいです。 特殊なカットでもなければ、「それモーキャプでいいじゃん」となります。
- 長尺のアニメーションというのは、付けるのに時間がかかりますし、慣れと技術が必要になります。この辺りを実写撮影の感覚で撮れてしまうのも大きなメリットです。撮り直しなんかもサクサクできます。
デメリット
- 良くも悪くもリアルな動きになります。いわゆる「アニメーション的な動き」をさせたいなら、向かない作り方と言えます。
- 実際に動く人(アクターと言います)の動きが、ほぼそのまま投影されるので、今度はそっちの力が必要になってきます。
- やり方にもよりますが、演技範囲(動くことのできる範囲)が相当限られますし、そもそも人型のキャラクターにしか使えません。
- 精度の問題があり、手付けで後修正する場合が多いです。また、手や顔などの細かい部分は専用の機材でないと撮りにくいので、この辺は手付けになることが多いです。
ソフトや必要な機材
個人で自宅とかでやるなら、機材はキネクトをオススメします。
ソフトに関しては、MMDは勿論、MiniConなんてのもあります。
少しお金をかければDesktop MOCAP iPiとかnuiCaptureなんかもあります。
他ソフトとのアニメーションの受け渡しをする場合は、セットアップや受け渡し方法などにも気を配っておく必要があるので、予め下調べをしておいた方がいいと思います。
シミュレーション
色々なパラメータを設定して、計算で動きを求める方法です。様々なシミュレーションがありますが、よく使う物理シミュレーションについて書こうと思います。
物理シミュレーションは、その名の通り物理演算を使ってリアルな動きを付けることができます。流体(水、炎、煙、爆発)とか、布をなびかせたりとか、ビルを壊したりとか、CGのお家芸みたいなものですね。
実際は物理演算のためのパラメータをキーフレームアニメーションさせるので、結局キーフレームアニメーションと言えなくもないです。
パーティクルを応用すれば、色々な表現を行うこともできます。
メリット
- いわゆるCG的なリアルなエフェクトが作れる。
- 応用すれば、色々なエフェクトを作れたり、組み合わせが多彩。
- 手付で付けると面倒な布の動きやモノの破壊などを、シミュレートしてくれる。
- ピタゴラスイッチのようなシミュレーションならではの楽しさみたいなものがある。
デメリット
- 高度になっていくほどパラメータが増えていき、実際の物理がわからないと何のパラメータなのかよくわからないので、いい感じのシミュレーションをするには試行錯誤が必要。
- 基本的にシミュレーションに時間がかかるので、上手くやらないとトライ&エラーの回数が減ってしまう。
- 「もうちょっとこうしたい」と思った時の微調整が難しい。
- 高度なことをやろうとすると、大体専門のソフトが必要になる。
ソフトや必要な機材
剛体シミュレーション(衝突判定や固いもののシミュレーション)やパーティクル、布のシミュレーションなんかは、ミドルエンド以上の統合ソフトとかだと付いています。
ただ、それぞれのソフトによって癖や動きが違ったり、使えるプラグインが違ったりするので、そのソフトで作ったエフェクトなんかを参考にしつつ、選んだ方がいいかもしれないです。
映画なんかで使われているCGエフェクトは大体専門のソフトやプラグインを使って作っています。ゲームなんかのエフェクトは、最近は物理シミュレーションも増えてきましたが、2Dベースで作っていることが多いです。
数値計算
「スクリプト」とか「エクスプレッション」と呼ばれるものです。 数式を書いて、それに従って動かします。
色々と組み合わせて使ったり、手付けすると面倒なものに使ったりします。
機械など規則正しい動きをするものや、音素材などに合わせてモノを変形させるとき、モーショングラフィックなんかで使ってそうな変形が伝わっていくアニメーションなんかを作るときなんかは書けると便利です。
プログラムに慣れてる方はやりやすいかもしれないです。
メリット
- 制御用のエクスプレッションを書くと、手付けアニメーションが多少楽になることがあります。
- プログラム的に組まないと、とてもできないような動きやエフェクトとかが付けられます。
- 物理シミュレーションと相性がいいです。
- 数値的にどう動いてほしいかわかっている動きを作りたい時は、計算通りに動いてくれます。
- 音素材など、数値的に動きのある素材を使って、シンクロさせると色々遊べると思います。
デメリット
- 数学やプログラムなどの知識が必要。
- 手付けで付けるような動きには向いていない。
ソフトや必要な機材
プロ向けのソフトなら、それぞれのソフト内でプログラムを書ける環境があります。
まとめ
基本的にはキーフレームアニメーションです。
アニメーションは応用範囲が広いので、色々と組み合わせるのが日常茶飯事です。
また、3DCGアニメーションは3Dだけで完結させず、コンポジット時に色々アニメーションさせることもあります。映像を作る方は、その辺りの広い視野もあると色々応用が利くと思います。