概要
After Effectsで書き出したsceneファイルを開き、 アニメーション付きのキャラクタscene ファイルを読み込んで背景動画と合成していきます。
ここまでのAfter Effectsのカメラトラッカーの操作とMaya sceneファイルを書き出すまでの説明は下記を参照してください。

オブジェクトの調整
After Effects からAE3D_Exportスクリプトで書き出したsceneファイルを開き、全体のオブジェクト トランスフォームを調整していきます。
書き出されたsceneの中のカメラ オブジェクトと複数のNullオブジェクトのトランスフォーム(位置・回転・スケール)は、Mayaの座標、高さY=0の平面上にあるとは限らないので、Mayaの座標空間に合わせる必要があります。
特にすべてのNullオブジェクトは、座標 Y=0の高さの同一平面上に合わせることが理想です。
注意:カメラと複数のNullオブジェクトの相対的な位置・回転・スケールは、絶対に変更してはいけません。
後の説明のように、全体をグループ化しておいて必ずグループを編集するようにしていきます。
ただし、この後で説明する「ロケータのスケール」や「ローカル スケール」はこの限りではありません。
書き出した scene(.ma) ファイル
AE3D Exportスクリプトのデフォルトのオプション設定では、Mayaのスケールに合わせて単位は[ cm ]、スケールは [ 0.01 ]で書き出されます。
ただし、Mayaでのスケールを「実物大」にこだわるのであれば、適宜スケールを編集する必要があります。
次の4つの画像は、書き出したscene(.ma)ファイルをMayaで開いたものです。
Z軸プラス方向にAE3Dカメラがあり、Z軸マイナス方向へ向かってNullオブジェクト8つが確認できます。
尚、ここでは、Mayaのデフォルトperspカメラと区別するために「AE3Dカメラ」と呼ぶことにします。

次の Side ビューだと分かりやすいですが、本来、地平面( Y=0)になければならないNullは、高さが異なっています。
この辺りをこれから調整していきます。



見かけの大きさ調整
場合にもよりますが、AE3Dカメラと8つのNullを画面全体で表示しようとするとそれぞれが小さすぎて見にくいことがあります。
その場合は、次の図のようにチャネルボックスの「ロケータのスケール」で調整してください。
AE3Dカメラは「ロケータのスケール」、 Nullは「ローカル スケール」X, Y, Zの値を調整します。
AE3Dカメラ➡ロケータのスケール
AE3Dカメラだけを選択し、「ロケータのスケール」を見やすい大きさに調整してください。

Null➡ローカル スケール X, Y, Z
Nullは、まとめて調整できます。
すべてのNullを選択し、チャネルボックスで「ローカル スケール」のX, Y, Z すべての入力欄に同じ値を入力してください。

この例では、図のようにそれぞれ「4」倍の大きさに調整しました。

グループ化
AE3D Camera と Nullをひとつのオブジェクトとしてトランスフォームしていくためにグループ化しておきます。
Nullのグループ化
全てのNullを選択してグループ化してください。( 編集 > 「グループ化します」/ command(Ctrl)+G )
➡ グループ名を変更しておきます。(グループ名の例 「Null_GRP」)

NullグループとAE3Dカメラ のグループ化
さらにNullグループとAE3Dカメラをグループ化してください。
Null_GRPとAE3DCamera を選択、 編集 > 「グループ化します」。
➡ グループ名を変更しておきます。(グループ名の例 「AE_scene」)

注意: Mayaでは、グループを選択するときは必ずアウトライナでグループを選択してください。
ビューポート画面上で選択しようとしても、グループに含まれるひとつのオブジェクトが選択されだけです。
グループの移動
ここからが肝心な作業。
AE3DCameraと全てのNullの位置関係を変えずに、全てのNullをできるだけ地平面(Y=0)に位置するように調整していきます。
グループのマニュピレータ(中心点)移動
準備として、[AE_scene ]グループのマニュピレータ(中心点)を移動しておきます。
Mayaでは、グループをつくるとマニュピレータは必ずワールド原点にあります。
移動先として、Nullの中で最も平均的な位置にあるNullを決めておいてください。
➡ ここでは[ Null03 ]の位置を移動先として決めます。 [ Null03 ]が[ AE3D Camera ]を含めたグループの中心になります。

下記のようにしてマニュピレータの中心ハンドルをドラッグし、[ Null03 ]へスナップ移動します。
移動ツールに切り替え、[ AE_scene ]グループを選択します。
Dキー と Vキーを押しながら移動マニュピレータの中心ハンドルをドラッグし、[ Null03 ]へスナップ移動してください。

グループを座標原点へ移動
この後はすべてこの位置を基準として操作することになります。
次は、下記のようにしてグループ全体をワールド原点へ移動します。
[ AE_scene ]グループを選択します。
Xキーを押しながら[ AE_scene ] グループのマニュピレータ中心ハンドルをドラッグし、ワールド座標原点へグリッドスナップ移動してください。

グループの回転
次は、いよいよ[ AE_scene ]グループを回転して地平面( Y=0 )に合わせていきます。
最初にtopビューでY軸水平方向に回転し、[ AE3DCamera ] カメラがワールド座標の Z 軸上( X=0 )に位置するようにします。
次に、sideビューでX軸回転し、Null全体が Z 軸上( Y=0 )に並ぶようにしていきます。
Y軸回転
top ビューに切り替え、次のようにして[AE_scene ] グループを Y 軸回転してください。
[AE_scene ] グループを選択し、[ AE3DCamera ] の位置を確認しながら、回転Yハンドルをドラッグします。
[ AE3DCamera ] が、ワールド座標の Z 軸上( X=0 )に回転移動したらグループの回転を止めてください。

X軸回転
side ビューに切り替え、次のようにして[AE_scene ] グループを X 軸回転してください。
全てのNullができるだけZ 軸上に水平になるように[ AE_scene ] グループを回転します。
[ AE_scene ] グループが、ワールド座標の Z 軸上( X=0 )に回転移動し、水平に並んだところでグループの回転を止めてください。
ただし、Nullの直線状の並びから極端に外れているものは無視してください。
このようなNullは、After Effectsのカメラトラッカーによる演算誤差などの影響が大きかったトラックポイントです。

ここまで [ AE_scene ] グループを調整することで すべてのNullを地平面に揃え、同時に[ AE3DCamera ] の位置を調整する作業が完了しました。
この後は、[ AE3DCamera ] のイメージプレーンに背景動画を静止画シーケンスとして読み込み、最後にキャラクターのシーンファイルを読み込んで合成していきます。
perspカメラの「ファー クリップ プレーン」
perspビューの視点を引いたときに、Nullやグリッドなどのオブジェクトが欠けたり、全く見えなくなる場合があります。
このような場合は、perspカメラのアトリビュートで「ファークリッププレーン」(どのくらい遠くまでビューポートで描写するか)の値を増やしてみてください。

実写動画の読み込み
After Effectsのカメラトラッカーで使用した動画は、[ AE3DCamera ]のイメージプレーンに読み込みます。
ただし、Mayaで動画ファイルを読み込むと不具合が多いので、必ず事前に静止画シーケンス(静止画の連番ファイル)として書き出したものを読み込む必要があります。
読み込む静止画シーケンスについては、連番の直前に「_ (アンダースコア)」ではなく、「ピリオド」を使用しなければならなかったり、桁数は4桁までなど注意点が多くあります。
動画ファイルから静止画シーケンスを作成する方法については、下記のページを参照してください。
double_arrow

AE3D Cameraの準備
ビューポートカメラの切り替え
ビューポートを[ persp ]ビューに切り替え、下記のように、カメラを[ AE3DCamera ]視点に切り替えます。
ビューポートメニューで、 パネル > パースビュー > AE3DCamera を選びます。

カメラのロック
AE3DCamera視点では、無意識のタンブルなどの操作でカメラ視点を動かさないようカメラをロックしておきます。
ビューポート メニューで、 ビュー > カメラをロック を選択してください。

イメージプレーンと静止画シーケンス
「イメージプレーン」とは、カメラ視点に合わせてつくられる平面のことです。
この平面に静止画シーケンス画像を読み込んで表示していきます。

イメージプレーンと静止画シーケンス
ビューポートで「イメージプレーン」をつくり、静止画シーケンスを読み込みます。
ビューポートメニューで、 ビュー > イメージプレーン > イメージの読み込み… を選択してください。

「開く」ウィンドウが表示されるので、あらかじめ背景動画から書き出しておいた静止画シーケンスフォルダを開き、連番ファイルのいずれかひとつを選択して開いてください。
静止画シーケンスの開き方: 静止画シーケンスファイルを開くときは、連番のいずれかひとつを選択して開くだけです。
ひとつを開くだけで、自動的にすべての連番ファイルが番号順に読み込まれます。
ビューポートに表示された画像をクリックすると、イメージプレーンを選択できます。
選択するとイメージプレーンのアトリビュートエディタが表示されるので、「▼ イメージプレーンアトリビュート」の「イメージの名前:」すぐ下の「イメージシーケンスの使用」にチェックを入れてください。

イメージシーケンスの使用:
これをチェックすることにより読み込んだ静止画シーケンスが動画として再生できるようになります。
同時に、Mayaのタイムスライダーの再生とリンクして動画が動くようになります。
静止画シーケンスを読み込んだときは、チェックを忘れないようにしてください。
イメージプレーンのロック
イメージプレーンの「トランスフォーム」をロックし、誤って動かさないようにしておきます。
ビューポート画面で、イメージプレーンをクリックして選択します。
チャネルボックスで全てのトランスフォーム項目を選択します。
選択した項目の上で右クリックし、「選択項目のロック」を選びロックしてください。

トランスフォームのロック:トランスフォーム(移動・回転・スケール)操作だけができなくなります。
オブジェクトの選択とアトリビュートの編集は可能です。
イメージプレーンの「深度」
カメラ[AE3DCamera]からイメージプレーンまでの距離を「深度」と呼んでいます。
カメラ[ AE3DCamera ]の位置は読み込んだ時点で決まっていて変更することはありませんが、イメージプレーンがカメラに近すぎるとNullも含めたMayaで作成したオブジェクトが後ろに隠れてしまいます。
必要なオブジェクトが見えるように、次のようにして深度を調整することができます。
イメージプレーン を選択 ➡ チャネルボックスの「 深度」の値をドラッグして調整します。

深度に応じてスケールも変化するので、[ AE3DCamera ]ビューの視点では変化が分かりにくいです。
下の図のように perspビューに切り替えると確認しやすくなります。
AE3DCameraからイメージプレーンまでの距離を長くすることで、必要なオブジェクトを隠さないようにできます。

「アニメーションプリファレンス」
アニメーションを再生するとき、Mayaのデフォルト設定では実際のスピードで再生されない場合があるので、次のようにして調整してください。
タイムスライダー右端のボタンをクリックして「アニメーションプリファレンス」を開きます。

プリファレンス ウィンドウで、「開始」フレームと「再生スピード」を図のように設定してください。
「再生スピード」を 「フレームレート×1」に設定する。
さらに、再生開始とアニメーション開始を「0フレーム」に設定する。
設定を保存し、確認のため再生する。ただし0フレームではイメージシーケンスは表示されません。

ここまででイメージシーケンスをアニメーション再生できるようになります。
Nullやグリッドがイメージシーケンスに対して追従しているか確認してください。
問題なければ最後にキャラクターを読み込み合成する作業に移ります。
キャラクタ オブジェクトの合成
アニメーション付きのキャラクタsceneファイルを読み込みセッティングしていきます。
読み込むキャラクタHIKアニメーションでは必ずキーをベイクしておいてください。
ベイク及びモーションキャプチャ オブジェクトの削除については下記を参照してください。
double_arrow

ファイルの読み込み
ファイル > 読み込み… でファイルブラウザを開きアニメーション付きのキャラクタsceneファイルを選択します。
この時、下記のようにオプションを設定してください。
読み込みオプション
ブラウザ右側のオプションは、図のように設定してから読み込んでください。

トランスフォーム調整
読み込んだファイルは、読み込みオプションでグループ化しているので、アウトライナでグループを展開してください。
ジョイントルートのグループ
キャラクタの位置・回転・スケールを調整していきます。
ただし、変更するのは「ジョイントルートのグループ」だけに限るよう注意が必要です。

接地の確認
front-Zビューに切り替え、キャラクタの足裏が地平面と合っているか確認してください。
この例では、元のシーンファイルで調整しているので問題はありません。
もし合っていない場合は、0フレーム=Tポーズの状態でジョイントルートのグループを上下移動して調整してください。

アニメーション再生
タイムスライダをドラッグするか、アニメーションを再生して背景画像との整合性を調整します。
特にキャラクタの移動距離が長い場合など、必要なフレームで画面から見切れていないか確認、調整してください。
キャラクタのジョイントルートグループを選択、調整するのは次のトランスフォームだけに限ります。


タイムエディタ
キャラクタのアニメーションで再生範囲よりうしろの時間帯に使いたい部分がある場合、「タイムエディタ」で時間をオフセットして調整できます。
ジョイント ルート グループを選択、ウィンドウ > アニメーション エディタ > タイムエディタ で「タイムエディタ」を開きます。
時間軸のオフセット
コンテンツを追加しクリップを左へドラッグ移動、時間軸のうしろの希望するアニメーション部分が再生範囲に入るよう調整してください。

地平面(影を受ける平面)
ライトを追加する前に、キャラクタの影を受けるための平面としてポリゴンプレーンを追加してください。
この平面ポリゴンのマテリアルに下記のようにaiShadowMatteを適用してください。この平面ポリゴンが影と照り返しを演出する地平面になります。

マテリアルにaiShadowMatteを適用したポリゴンプレーンは、このあとでライトを追加してから移動・回転・スケールを調整します。


ライトの追加と調整
ライトはイメージプレーン(背景動画)の環境に合わせて適宜設定します。
屋外など日中の自然光は、aiSkyDomeLightとディレクショナルライトの組み合わせとします。
aiSkyDomeLightの注意点
図の上のようにレンダリングされると問題があるので、スカイドームライトの直接の見た目はレンダリングされないようにします。
➡ aiSkyDomeLightアトリビュートで、Visibllity項目のCameraを「0.000」に設定しておく。

屋内や夜間ではスポットライトとポイントライトの組み合わせとします。
スポットライトとポイントライトの注意点
背景画像内の影からおおよその位置・向きを予想してライトの位置と向きを決めます。
移動するときは、最初にXZ平面上を移動し、最後にY方向に持ち上げるようにします。
マニュピレータのハンドルが見えない位置になりやすいので、4画面で操作するか、またはチャネルボックスで 項目名を選択 し、ビューポート上で マウス中ボタンで左右にドラッグして値を変化させてください。

地平面のトランスフォーム
aiShadowMatteを適用したポリゴンプレーンの大きさと位置を、時間軸上全体にわたってキャラクタの影が見切れないよう適宜調整してください。

カメラトラッキングで書き出したsceneとアニメーション付きキャラクタオブジェクトの合成についての説明は以上です。