![見出し画像](https://assets.st-note.com/production/uploads/images/26626586/rectangle_large_type_2_4b255cd11f227e393e3f3e4e30fa9597.jpg?width=1200)
CGと写真を合成する方法その3:マルチパスを使う方法
これまでコンポジットタグを使う方法とシャドウキャッチャーを使う方法を紹介しました。今回は、マルチパスレンダリングという機能を使い、CG画像を影や反射、光沢などをレイヤー分けして、それを使ってPhotoshopやAfter Effectsで合成する方法を紹介します。
マルチパスレンダリングとは
マルチパスとは、CGをレンダリングして画像や映像にしたときに材質の色や影、光沢、映り込み、オブジェクトごとのマスクなどを別レイヤーにして保存することです。
下の画像を見てください。こちらはCGで制作されたものです。通常、レイヤー分けされずに1枚の画像としてレンダリングされます。
しかし、マルチパスレンダリングにすると下のようにいろいろな要素をレイヤーに分けてレンダリングされます。
Photoshopでマルチパスでレンダリングした画像を開いた状態は下のようになります。
影の成分だけが別レイヤーになっているので、背景に合成するのも乗算で重ねるだけです。オブジェクトごとにマスクも生成できるので、ファイルサイズは大きくなってしまいますが、合成も簡単にできるメリットがあります。
今回は、下記のようにレンダリングしたものをPhotoshopで合成します。
合成必要なのは、3つの要素になります。
1. 合成するCGのレイヤー
2. それ切り抜くマスク
3. 背景に合成する影だけのレイヤー
これを得られるように設定をしていきます。
それでは実際操作しながらやってみましょう。次のファイルをダウンロードしてCinema 4Dでmultipass.c4dファイルを開いてください。
このファイルは、下のように予めライティングして、あたりとして背景が設定、合成用の影を受けるオブジェクトまで設定しています。後から合成するので背景は不要ですが、合成する位置の確認のために配置されています。
マスクを取得するための設定
マスクの設定をします。まずはマスクを取得したいオブジェクトをユーザーインターフェイスの右上にあるオブジェクトが並んだオブジェクトマネージャからマスクを作りたいオブジェクトを選択します。今回の場合は、フィギュアというオブジェクトになります。選択するとオブジェクト名がオレンジ色になります。
次に、オブジェクトマネージャのタグメニュー/レンダータグ/コンポジットタグを選択して、フィギュアにコンポジットタグを追加します。
右下の属性マネージャのコンポジットタグのオブジェクトバッファタブを選び、一番上の使うにチェックを入れます。
このバッファところにある番号は、マスクを管理するときの番号になります。このコンポジットタグは、複数のオブジェクトに設定できるので、この番号を使って、マスクを管理します。番号を変えることで別のマスクにすることができます。
レンダリング設定:マルチパスの設定
コンポジットタグを設定ができたので、レイヤー分けの設定をします。レンダリングメニューの<レンダリング設定を編集>を選んで、レンダリング設定を開きます。
そして、マルチパスにチェック(①)を入れてます。これはマルチパスをレンダリングするかどうかの設定になります。ただ、これだけではどのレイヤー(Cinema 4Dではこれをパスと呼んでいます)をレンダリングするかしてされていないので、レンダリングするパスを②のところから行います。
まずは、RGBA画像を選択します。これは、レンダリングした画像でPhotoshopのカラーチャンネルであるRGBとアルファチャンネルのセットになったパスになります。なお、このときのアルファチャンネルは、Cinema 4Dでレンダリングされるすべてのオブジェクトのマスクになります。今回の場合影を落とす地面にしている平面も含まれます。
影はその名前通り、すべての影になります。影は、地面に落ちる影だけでなく、自分自身に落ちる影が含まれます。
次に、先程設定したコンポジットタグのためのパスを設定します。マルチパスボタンのリストにあるオブジェクトバッファを選びます。オブジェクトバッファが追加されたら、リストからオブジェクトバッファを選択して、オブジェクトバッファ パスのグループIDを1になっているか確認します。
コンポジットタグをいろいろなオブジェクトに設定して、複数のマスクを取得したい場合は、オブジェクトをバッファも複数作成して、このグループIDをコンポジットタグの番号と合わせます。
レンダリング設定:保存形式の指定
いろいろなレイヤーを分けて書き出せるマルチパスレンダリングは、保存形式を指定する必要があります。保存形式の指定は、レンダリング設定のウインドウの左のリストの保存ページから行います。
保存をクリックすると、保存形式を指定する画面になります。保存は、通常画像とマルチパス画像があるので、今回はマルチパス画像の保存にチェックを入れ、保存先を指定します。
フォーマットは、Photoshopで開くならPSDを選びます。PSDならすべてのレイヤーを一つのファイルにまとめられます。一つのファイルにまとめるには、マルチレイヤーファイルにチェックが入っていることを確認します。色深度は、合成する画像に合わせます。今回の場合は、8-bit/チャンネルにしておきます。
レンダリングサイズは、出力のページで行いますが、今回のサンプルシーンでは設定済みです。なお、レンダリングサイズは合成する画像に合わせる必要があります。
レンダリングしてPhotoshopで合成
設定が完了したのでレンダリングを行います。レンダリングはレンダリングメニューの<レンダリングして画像ビューワーに>を選択して実行します。レンダリングが完了すると、保存ページで指定したところに画像が保存されます。保存したファイルをPhotoshopで開きます。
影だけしか見えていないかもしれませんが、これは背景のレイヤーがオフになっているためです。
まずは、これに合成する背景画像を開きます。背景画像はtexフォルダにbackground.jpgというファイルがあります。この画像をすべて選択して、レンダリングした画像にペーストします。ペーストすると、カラープロファイルが異なっているため、プロファイルを変換するかどうか聞いてきますので、OKを押します。
マルチパス画像をPhotoshopで開いたときに注意が必要なのが、カラープロファイルが通常のsRGBではなくLinear Color Profileになっている点です。カラープロファイルが異なる画像と合成する際は色が変わってしまいます。
背景画像のレイヤーを影レイヤーの下にします。すると影だけが合成されているのが分かります。これは、影のレイヤーが予め合成モードが乗算になっているためです。
次に、バッググラウンドレイヤーを新規レイヤーを作成アイコンにドラッグ&ドロップしてレイヤーを複製します。
そして、複製したレイヤーを一番上にします。あとは、フィギュアの部分だけが表示されるようにレイヤーマスクを作成します。マスクは、オブジェクトバッファで作成したマスクを使います。
レイヤーマスクを作成するために、チャンネルパレットに切り替え、オブジェクトバッファチャンネルをCtrl+クリックしてフィギュアの選択範囲を作成します。
コピーしたバッググラウンドのコピーレイヤーを選択して、レイヤーメニュー/レイヤーマスク/選択範囲街をマスクを選びます。
これでPhotoshopでの合成の完成です。この方法の合成のメリットは、レイヤーになっているので、影のレイヤーの不透明度を調整して、影の濃度を調整したり、合成するフィギュアを色補正してよりなじませたり、合成する位置をPhotoshop上で変更できるので、何度もレンダリングすることなく調整できます。
After Effectsでの合成
動画の場合は、After Effectsなどのコンポジットソフトを使います。After Effectsなどで合成する場合は、PSDファイルでもいいですが、レイヤー毎に分けておくと便利です。レンダリング設定の保存で<マルチパスレイヤーファイル>をオフにしておくと、パスを個別に保存できます。
これを背景画像を一番下にして、その上に影レイヤーを乗算で重ね、その上にCGのRGB画像を置いて、その上にオブジェクトバッファを置いてそれをルミナンスキーマットでマスクすれば合成できます。
なお、After Effectsの場合もカラープロファイルは注意が必要です。プロジェクト設定でカラーマネジメントを有効にしてください。
今回、合成する方法を3つ紹介しました。どの方法が良いかは、使うツールや後工程によるので、作業に合わせてお選びください。