デジ映表技応用10回(6/22) マルチパスレンダーのすすめ

本日は、『デジタル映像表現技法応用』の第10回目です。

今日は

マルチパスレンダー

のすすめ です。

マルチパスレンダーというのは、レンダリングをワンパス(1回)でレンダリングするのではなく、

各素材に分けて出力するものです。

次の例はCinema4Dがもっているマルチパスの種類です。

マルチパスで素材を分けてレンダリングすることで、後で合成したり、微調整する際には便利な機能です。

今日はAEとCinema4Dとの合成も含めて見せていきます。

 

以前やった3DトラッキングとDCCツールの連携をやってみたいと思います。

上手く連携が取れるかですが、やってみましょう!

ひとつは

AfterEffectsからCinema4D Liteへの連携

これはバンドル版での操作をやってみたいと思います。

もうひとつは

AfterEffectから正規版Cinema4Dにカメラデータ、平面レイヤー、テキストデータを持ち込み、C4D側でオブジェクトを追加作成する。

です。

 

作業のワークフローです。ちょっと工程が複雑で覚えることがたくさんありますが、確実に理解するようにしてください。

まずは以前と同じフッテージを使ってAfter Effectsで3DTrackingをおこないます。
データはこちらからダウンロードしてください。

AfterEffectsのプロジェクト設定を開き時間表示の設定を「タイムコード」から「フレーム」に変更しておいてください。その方がフッテージの使いどころの表示は分かりやすくなります。

MAXON Cinema 4D Exporter C4Dデータの書き出し

AfterEffects から CINEMA4D のデータの書き出しをおこないます。

「ファイル」/「書き出し」から「MAXON Cinema 4D Exporter…」を選んでください。

この時にエラーメッセージが出る場合がありますが、そのまま続けてください。

「テキストレイヤー」を作成した場合には次のようなメッセージが出ます。

C4Dで「文字ごとに細かいExtrude(厚み付け)」作業を行うか(上段)、厚み付きテキストデータとして読み込む+C4D でフォントとテキストを変更することが可能(下段)、です。今回は下段でやっておきます。

Cinema4D Lite版の起動 (仕様が変更されている!?)

Cinema4D Lite版はAfterEffects内で行います。もし、学生無償版を持っている人は、直接 Cinema4D R25 or R2023を立ち上げてください。

AfterEffetcsに書き出したCinema4Dファイルを読み込みます。

そのまま、コンポジションを作成します。

すると「エフェクトコントロール」内に「CINEWARE」が出来ます。

「CINEWARE」の中のLive Link を「Enable」にするとCinema4D Lite版が起動します。その時にCinema4Dのバージョンを確認してください。

もし、うまく起動しない場合にはAfterEffects「新規」/「Maxon Cinema4D ファイル…」でCinema4D Lite版を起動し、

必ずCinema4DLiteの「Edit」/「Preference」/「Extensions」/「After Effects」内のLive Link Enabled at Startup(変更されました) のチェックボタンをONにしておいてください。再起動後設定が生かされます。

Cinema 4D と Cineware

https://helpx.adobe.com/jp/after-effects/using/c4d.html
C4Dのプロジェクトファイルを読み込むと次のようなオブジェクトレイヤーが現れます。このまま作業をしてもいいのですが、xyzの軸Axisが正確に配置されていないので軸方向を修正しておきます。Rootのヌルオブジェクトのrotateを正しく水平垂直になるようにします。

Backgroundレイヤーを配置

次に背景を読み込んで動きが合っているか確認します。背景の描画のために「Background」というオブジェクトを配置します。

「Background」オブジェクトにMaterial(マテリアル)質感を入れます。

Cinema4DではMaterial(マテリアル)質感の作成は簡単です。下部にあるMaterial(マテリアル)で新規のMaterial(マテリアル)Shaderを作成します。

Material(マテリアル)質感の作成

Material(マテリアル)ウィンドウの「Create」で「New Standard Material」を選び、新規のMaterial(マテリアル)ファイルを作ります。

新しいMaterial(マテリアル)ファイルは次のようなグレーの球のアイコンで表示されます。

アイコンをダブルクリックすると「Material Editor」が開きます。「Color」を選択して、「Texture」に背景のムービーを読み込ませます。

ムービーを読み込ませたら、ムービーが表示しているアイコンをダブルクリックします。

表示が変わり、テクスチャーに関する細かいパラメーターが出現します。

「Animation」の中で「Movie Start Frame」「Movie End Frame」「Movie Frame Rate」を正しく書き込みます。

特に「Movie Start Frame」をAfterEffectsで使いどころを編集したフレームを正しく入力しないと動きが表示されません。

「Movie Frame Rate」は正しく表示されていない場合があるので、「29.97」あるいは「30」に書き換えます。

これでMaterial(マテリアル)ファイルの作成は終了です。

Material(マテリアル)ファイルのアイコンを「Background」オブジェクトのアイコンにドラッグするとオブジェクトウィンドウにMaterial(マテリアル)のアイコンが現れます。

これでMaterial(マテリアル)ファイルの割付けが終わりました。「Editor」内の「Animation Preview」にチェックを入れておいてください。

背景が表示されます。

 

次に平面オブジェクトに背景の映像を投影マッピングします。それによって平面オブジェクトをカモフラージュします。

「Background」で設定した背景のムービーを同じように配置します。Material(マテリアル)の配置までは同じ作業です。

オブジェクトウィンドウ内の「マテリアル」アイコンをクリックすると下部に「Texture Tag」が現れます。

「Projection」の項目でUVマッピングの種類を 「UVW Mapping」から「Frontal(正面)」へ変更します。

テクスチャーが正面から投影マッピングされ、見た目にはそのまま映像が流れているように見えます。

シェーディングの差が出ているので「Background」の質感に合わせるために「Compositing Tag」を付けます。

平面オブジェクトの上で右クリックをしてプルダウンメニューを出現させます。

「Cinema4D Tag」/「Render Tag」/「Compositing」を選択します。

平面オブジェクトに「Compositing」タグが組み込まれます。

「Compositing Background」にチェックを入れます。

レンダリングしてみると、背景と同じ質感になり、違和感がなくなります。

次に3DのモデルとLightを配置します。

Sphere(球)のモデルの作成

Cinema4Dには基本的なオブジェクト形状が用意されています。今回はその中でSphere(球)を使います。

「Create」/「Object」/「Sphere」(球)を選択します。

Sphere(球)のモデルの位置を決めます。

ライト 光源の設定

「Create」/「Light」/「Light」(点光源)を選択します。

Light内の「Shadow」の設定

Cinema4DのLightはデフォルトは影が付きません。そのため影を落とすために「Shadow」の設定を行います。Cinema4Dの「Shadow」にはいくつか種類があり、「Shadow Map(Soft)」、「Raytraed(Hard)」、「Area」があります。ここでは高速にレンダリング出来る「Shadow Map(Soft)」を選択します。「Shadow Map(Soft)」はスキャンラインレンダリングのアルゴリズムを用いており、レイトレーシングよりも高速な影の処理が可能になります。

「Shadow Map」のテクスチャーサイズの設定をします。解像度は「500 x 500」~「1000 x 1000」程度が良いと思います。解像度を上げると影自体がくっきりと描画されます。

最後にロゴのModelにBebel(面取り)と厚み付けを行います。

Cinema4Dではロゴに対しての厚みや面取りの作業は簡単にできます。「Extrude」という「Generators」というファンクションタグを親子付けするだけです。

「Extrude」の中に「Caps」というロゴの面と厚み、面取りを行います。ここでは「Fillet Cap」という面+面取りの構成を選択します。「Radius」で面取りの幅を調整します。

また「Object」の中でzの数値で「厚み」を調整します。

ここまでで一度レンダリングしてみましょう。

 

問題がなければ今度はAfterEffectsに受け渡すための準備をします。

AfterEffectsはCG側でレンダリングしたムービーファイルや画像を読み込み、合成をするのが通常です。

今回のAfterEffectsとCinema4Dとの連携の場合は直接C4Dファイルを読み込み、レイヤーとして配置し、そのままAfterEffects内でプレビューしたり、レンダリングを実行することが出来ます。ただし、Lite版の場合にはレンダリング機能も一部制限されているので、Glorval Illuminationなどの凝った質感は実行することが出来ません。一般的なLambert ShadingやPhong Shadingレベルが可能です。

そのため、いくつかのレンダリング設定をおこないます。

Object Buffer オブジェクトバッファ(オブジェクトマスク)

まず、CGのモデルのみの素材を作ります。「Cinema4D Tag」/「Compositing」で描画の設定とCGモデルだけで「Object Buffer(オブジェクトバッファ)」の設定を行います。

「Object Buffer(オブジェクトバッファ)」はC4Dの効果的、優れた機能のひとつで。指定したオブジェクトモデルやグループのみのアルファ(マスク)チャンネルを書き出すことが出来ます。オブジェクトが指定しない物の陰になっていれば、その部分だけ除外されます。今回はSphere(球)とLOGOのモデルグループに対して「Compositing Tag」を配置し、「Object Buffer」でID番号を決めます。ここではバッファの「1」番に指定します。同じバッファ番号のモデルは一括で処理されます。

マルチパスレンダリングと組み合わせて使います。マルチパスレンダリングは合成のためにいちいち素材分けをしてレンダリングを実行しなくても、一度のレンダリングで複数のレンダリング処理を実行します。

ここでは、通常のイメージレンダリング、Sphere(球)とロゴのオブジェクトバッファ(アルファ=マスク)、Sphere(球)とロゴのShadow(影)の3種類のレンダリングを設定します。

レンダリングをしてマルチパスの結果を確認します。

プロジェクトを保存してAfterEffectsの作業に戻ります。Live Linkが可能な場合には、C4Dファイルを保存した時点でAfterEffects側に反映されているはずです。Linkされていない場合には AfterEffectsでもう一度C4Dファイルを読み込んでコンポジションでの設定を行います。

AfterEffectsでCinema4Dで作成して保存したファイルを読み込みます。C4Dファイルでコンポジションを作成します。エフェクトコントロール欄に「CINEWARE」が表示されます。

「CINEWARE」での設定は、「Standard(Final)」、「Comp Camera」になっていることを確認してください。

 

素材分けをした3つのC4Dレイヤーを作成します。「Define Multi-Pass」にチェックを入れて、「Add Image Layers」ボタンを押してください。Cinema4Dで設定したMulti Passの3つのレイヤーが自動的に作成されます。

Shadow 影素材 合成は「乗算」で

オブジェクトバッファのマスク素材

RGBA Image素材

トラックマットの設定がされていないので、そこだけおこないます。「RGBA Image」レイヤーのトラックマットを「ルミナンスキー」で「Object Buffer」レイヤーを参照します。「Shadow」レイヤーは合成モードが「乗算」になっているのを確認します。

メインビューウィンドウに最終合成結果が現れます。

最後にレンダキューでムービーの書き出しを行います。

以上がAfterEffectsとCinema4Dとの連携です。

いかがでしたか?ちょっと工程がたくさんあって難しく感じるかもしれません。

理解を深める意味で実際に何度もやってみてください。

 

そして、

これを今度はMAYAに持ち込んで同じことをやってみましょう。

そのためにCinema4Dの正規版(現在ではMAXON ONE)を使用します。

MAXON ONEは現在は有償になってしまいました。(6か月=約10ドル)

それでも、Zbrushが使えたり、Trapcode、ParticularなどのAEエフェクトが使えますので、

ぜひ、試してほしいと思います。

 

それから、

PROJECTの中に Cinema4DからFBXに出力したファイルを入れてあります。

正規版でないと書き出し出来ませんが、FBXを経由すれば、他のDCCツールとの連携が出来るようになります。

試してみてください。

そして結果を教えてください。