チュートリアル / MotionBuilderでカットシーン制作
第2回:Mocap収録してリターゲット
- MotionBuilder
- アニメーション
- キャラクター・リグ
- ゲーム
- コラム
- チュートリアル
- 中級者
- 学生・初心者
今回は、モーションキャプチャーしたデータをキャラクターにリターゲットします。
モーションキャプチャーの機材はゼロシーセブンさんにご協力いただき、Xsens社のMVNをお借りして収録をしました。この場をお借りしてお礼を申し上げます。
MVNとは
MVNは慣性センサーを用いたモーションキャプチャーです。
4,5年前に使用した経験があるのですが、当時のバージョンでは磁場の影響が大きくデータの精度はお世辞にも良いとは言えなかったです。最新のバージョンでは磁場の影響を遮断してモーション収録を行え、前と比べると格段に良くなっています。さらにオフラインソルバ(リプロセスHD)を用いることで、収録したモーションデータを再構築し、接地のズレやドリフトが修正されたクリーンなデータを得られるようになりました。
さらに、MVNのメリットとしては場所を選ばないことです。光学式のモーションキャプチャーだと専用のスタジオで広さも制限がありますが、このMVNは体に付けたセンサーをwifi経由でパソコンにデータを送信するので場所の制限がありません。
詳細はゼロシーセブンさんのMVNのページでご確認いただくこととして実際の収録の流れを順を追っていきたいと思います。
http://zeroc7.jp/products/mvn3/
モーションキャプチャーする前の準備
どの機材を使用する場合でも、モーションキャプチャーする前の準備としてモーションリストが必要です。リストを作成する時には、収録する機材や場所の広さ、役者の人数、絵コンテからのカメラカット割りから考慮してリストを作成します。
今回は赤坂にあるゼロシーセブンさんのイベントスペースをお借りしました。
余談ですが、ここは時間貸しもしているので、結婚式の2次会、会議などでぜひご利用ください(笑)
今回のカットシーンの想定はボス登場シーンです。絵コンテは以下のようにしました。
大まかな流れとして、Miaが扉を開けて警戒しながら部屋に入ってくる。歩いていると上からAragorが上から降ってくる。対峙するMiaとAragorという流れです。
役者はゼロシーセブンさんのスタッフ1名にお願いいたしました。
モーションキャプチャースタジオを利用してアクターが2人都合つけば、1つのテイクで十分収録出来るものですが、今回の場所のスペック、Xsensの機材、絵コンテ、アクター1人という条件からモーションリストはこんな感じで作成しました。
MVNでモーションキャプチャー
一番最初にすることは演技をする役者さんの各関節間の長さなどの身体情報を記録することですが、今回は既にその情報を記録しているゼロシーセブンのスタッフさんのデータを使いました。
早速スーツを着て、キャリブレーションをします。キャリブレーションといってもMVNが用意しているタイミングで歩くだけです。あとは自動でキャリブレーションの計算が始まるので終了するまで待ちます。
キャリブレーション自体は約1分くらいで完了します。キャリブレーションが終了したら、絵コンテを元に演出を確認しながら、リストの順番通りに撮影していきます。
現場で演出を伝えながら収録したので、全部取り終わるのにだいたい40分くらいかかりました。
StoryのためのClip作成手順
カットシーンを作るときには、これまたMBの特徴的な機能の1つStory機能を使います。
アニメーションやオーディオ、ビデオ等々の素材のことをMBではClipと呼びます。
Story機能はそのClipを切ったり、つなげたり、順番を入れ替えたりしてシーン制作が出来る、映像編集ソフトのような機能です。Mayaで言うところのTrax Editorと同じような機能ですね。
さて、MVNで収録したMCデータをキャラクタにリターゲットして、カットシーン制作に適した形のClipにするには大まかには以下の手順で進めていきます。
① アクターをキャラクタライズ、MCデータを読み込む
② キャラを読み込み、リターゲット
③ リグでモーション調整
④ Clip用にデータを保存
今回作成して出来るClipは、第4回のコラム「シーン制作その1 Storyの使い方編」(仮)で使う予定なので、楽しみに待っててください!
では、手順を1つ1つ見ていきましょう。
① アクターをキャラクタライズMCデータを読み込み
MVNで収録したデータをFBXで出力したものを開くと、演技した役者の体型の骨データになっています。0フレーム目にTポーズになっていて、1フレームからキャプチャーしたデータがあります。[動画 00:10~]
Tポーズを利用してキャラクタライズをします。[動画 00:16~]
MVNからExportされた骨の名前はキャラクタライズをするときの命名規則に沿っているのでドラッグ&ドロップだけでマッピングが完了します。[動画 00:38~]
これまでのMiaとAragorと同じようにBipedでキャラクタライズをオンにします。[動画 00:57~]
残りのMCデータを以下の手順で読み込みます。[動画 01:44~]
① 骨を選択
② File→Motion File Import…
③ MCデータのfbxを複数選択
④ Mergeで、[In Selected Models Only]のオプションで読み込む
アニメーションがテイク別に読み込まれたのを確認します。[動画 02:20~]
MCリストをもとに、どのテイクにどのモーションがあるか分かり易くするためリネームします。[動画 03:02~]
② キャラを読み込み、リターゲット
MBの特徴的な機能として、リターゲット機能があります。
リターゲットとは、キャラクタのアニメーションを別のキャラクタに流し込む機能です。
リターゲット出来るのはキャラクタライズされたキャラクタ同士でやる方法がまず1つ。もう1つの方法は、モーションキャプチャーデータで動いているActorを使ってやる方法です。
今回はキャラクタライズされたキャラクタ同士の方法でリターゲットします。
File→Mergeでキャラクターを読み込みます。[動画 00:03~]
Merge Optionsを設定します。[動画 00:25~]
各オプションは以下通りです。
Import:ON テイクがあるとき一緒に読み込みます。
Import:OFF テイクがあっても読み込みをしないです。
今回はモデルだけを読み込むので、ImportチェックOFFで大丈夫です。
Take Start/End マージした後のタイムスライダーのStartとEndの設定です。
Import From File マージで読み込んだシーンのStartとEndで設定されます
Leave As Is 元のシーンのStartとEndのそのままです。
Frame Animation マージで読み込んだアニメーションのStartとEndで設定します。
今回はImportのチェックをOFFにしているのでTake Start/Endは気にしなくてもいいですが、念のためLeave As Isに設定しています。
Elementは各オブジェクトの読み込まれ方の設定です。
同じ名前があった時、リネームして読み込み。同じ名前がない時、そのまま読み込みます。
同じ名前があった時、上書き更新で読み込み。同じ名前がない時、そのまま読み込みます。
読み込みません。
今回はNameSpaceを設定しているので上書きされることはないのですが、別キャラクターなど読み込むときはAppend(レ点マーク)で読み込むのが定石です。
読み込まれたらMiaにリターゲットをしていきます。[動画 00:45~]
Miaのキャラクターを選択して、Input TypeはCharacterを選択、Input SourceはActor01を選択します。
ちょっと脱線しますが、MBで定義されている重要な概念のCharacterについて解説します。
キャラクタライズされたキャラはCharacterという単位で管理されます。
このキャラクタライズされたCharacterはリグ以外にも動かすことが出来る特徴があります。
大きくは以下の通りです。
① 自分自身の骨で動いている状態
② コントロールリグで動いている状態
③ アクターで動いている状態
④ 別のCharacterで動いている状態
この③と④の時がリターゲットと呼ばれる状態になっています。
さて、本題に戻りリターゲットになっている状態で、Tポーズの時に役者さんの姿勢とキャラ(この時はMia)の姿勢が近くなるようにパラメーターを調整します。
この時は胸のIK Blend Tを100%にしました。[動画 01:33~]
また脱線しますが、リターゲットする時にMatch Sourceというパラメーターがあります。[動画 02:33~]
Match Source ON:役者と同じ位置でリターゲットされる
Match Source OFF:役者とキャラの体型の差を考慮してリターゲットされる
このMatch Sourceは基本的にはOFFに設定します。ONにするケースはMocapを収録する際に背景の寸法を合わせて役者さんが演技し、その役者さんがその背景に2か所以上接触あるときです。
例えば、役者さんが机Aに置いてある手紙をもって歩き、机Bに置いた時などMatch SourceをONにしたほうが良いです。ただ注意しないといけないのはONにしたとき役者とキャラの体型差が大きいと歪が大きく出てしまいます。
今回も特に必要がないのでMatch SourceはOFFにします。
モーションによってリターゲットオプションのいじる箇所は変わってきますが、scene01_Aのモーションはこれまでのリターゲットオプションで問題なさそうなので骨にベイクします。[動画 03:08~]
scene01_Bのテイクもこれまでのオプション設定で問題なさそうなので骨にベイクします。[動画 05:16~]
scene01_Cのテイクに変えてリターゲットします。[動画 05:25~]
このテイクでは手が頭にめり込んでいるので調整します。[動画 05:48~]
手首のIK Blend Tの値をアニメーションさせます。[動画 06:32~]
あとOffsetにアニメーションをいれて姿勢を調整します。[動画 09:11~]
他にもいろいろ調整できるオプションは沢山ありますが、よく使うのは「IK Blend T 又はR」と「Offset」の箇所だけです。これらで調整が出来ない部分は、リグにベイクして調整したほうが早いですね。
③リグでモーション調整
これまではリターゲットのオプションでアニメーションを調整しましたが、リグで調整したほうが早いケースもあります。まずはいったんSkeletonにベイクします。[動画 00:00~]
役者の骨とMiaを並べて重心の確認するため、役者の骨をオフセットします。[動画 00:22~]
Miaをリグにベイクします。 [動画 01:03~]
あとは、Miaの重心を調整するためレイヤーにキーを打って調整します。 [動画 01:33~]
最終的にはキーはこんな感じなりました。
調整が完了したらSkeletonにベイクします。[動画 03:03~]
Scene01_Dのテイクに移り、Aragorをリターゲットします。[動画 03:15~]
Aragorも同様に0フレーム目で基本の姿勢の調整をします。[動画 03:47~]
アニメーションを再生してチェックし、早々にリグにベイクします。[動画 04:19~]
まずは腕のめり込みを直したほうが後々調整効率が良さそうなのでレイヤーにキーを打ってめり込み調整をします。[動画 05:54~]
あとは立ち上がった後のポーズを調整します。[動画 07:11~]
Clipとしてアニメーションの調整はおおまかなめり込みや重心、ポーズなど目立つところだけを調整しておきます。カットシーンの場合カメラに映らない箇所を時間かけて調整しても意味がないので、カメラに映っているところに時間をかけるようにして生産性を高めたほうがいいですね。
④クリップ用にデータ保存
クリップ用のデータというのは、簡単に言うとリターゲットした各キャラの骨だけのデータです。
この骨データをStoryのClipとして配置し使用します。
まずはMiaの骨グループを選択してSaveSelectionで保存します。[動画 00:11~]
かなり重要な手順のポイントとしてSaveダイアログウィンドウでSave One Take Per Fileにチェックを入れることです。
これらにチェックを入れるとテイク毎にファイルがテイク名で保存されます。
Save Optionsで保存したいテイクを選びます。今回はMiaの骨データを保存するため、scene01_DはAragorをリターゲットしたテイクなのでチェックOFFにします。[動画 00:50~]
続いて同様にAragorの骨グループを選択してSaveSelectionして保存していきます。[動画 01:01~]
Aragorの骨データを保存するため、scne01_D以外をチェックOFFにします。[動画 01:16~]
保存されたファイルを確認すると各テイク名のファイルごとに作成されています。[動画 01:30~]
リターゲットしたこのファイル自体も保存します。[動画 01:34~]
念のためテイクごとに保存されたファイルを確認していきます。[動画 01:58~]
Miaのファイルは問題ないですが、Aragorのファイルscene01_D.fbxが問題あるので、リターゲットした元のファイルを開いて再度保存します。[動画 03:40~]
さて、今回はモーションキャプチャーデータのリターゲットについてでした。MBのリターゲットに関する日本語の解説がほとんどないので今回の記事で少しでもお役たれば嬉しいです。
リターゲットに関してヘルプをみると沢山調整できるパラメーターがあります。リグで調整したほうが早いかリターゲットのパラメーターで調整したほうが早いかの判断はもう場数を踏むしかないですね。
次回は、カメラの設定とカメラリグの作成、オリジナルのNoiseFilterを使用した手振れカメラの作り方です。今回のMBコラムの目玉としてNoiseFilterをダウンロード出来ますので、乞うご期待!
まとめ
・MVNは進化した
・リターゲットの調整は、パラメーターかリグか判断を早くする
・SaveOneTakePerFileの機能を使って複数アニメーションの管理を効率的に!
今回のシーンファイルがダウンロードできます。