CGと写真を合成する方法その2: シャドウキャッチャーを使う方法
前回、コンポジットタグを使う方法を紹介しましたが、今回はシャドウキャッチャーマテリアルを使う方法を紹介します。
シャドウキャッチャーは、その名前の通り影を受けるためのマテリアルで、レンダリングしたときに影や反射をアルファチャンネルで抜いた状態にしてくれます。下記のように、影を含めたマクスを作成するのTIFやPNGなどアルファチャンネル付きのファイル形式で保存すると、簡単に写真に合成できます。
シャドウキャッチャーシェーダーを割り当てる
シャドウキャッチャーを使う方法はとても簡単です。まずは影を受けるための平面オブジェクトを作成します。
次に、マテリアルマネージャの作成メニュー/マテリアル/新規シャドウキャッチャー マテリアルを作成します。このマテリアルを影を受けるオブジェクトに適用します。
今回は、設定済みのシーンを用意しました。
シャドウキャッチャーのパラメータ
より自然な合成を行うためのパラメータがシャドウキャッチャーには用意されています。
影の強度
影の状態は、シャドウキャッチャーマテリアルで調整をします。デフォルトでは真っ黒な影になるため写真がとても不自然ですが、影の強度を調整することで影の透過度を調整できるので、実写の影に合わせて濃度を調整することで自然な合成が行なえます。
影の色
影の色は、周囲の環境色や合成する写真の色のトーンなどにより、単純なグレーでは不自然な場合に影に色を付けることでより自然に合成ができます。下の画像では、右の影は周囲の影が青みがかっているので、それに合わせて影の色を調整してより自然にしています。
ライティングを含む
ライティングを含むは影が3Dシーンにあるライトの影響を受けて濃淡を出したい場合に使います。レンダリングされたアルファのマスクに陰影が出るので、複数の光源があるようなケースではより自然な結果が得られます。
反射
反射は、反射部分も含めレンダリングされ、反射部分のマスクも作成されるので、合成される側のものが映り込む場合に使います。たとえば、光沢のあるフローリングシーンの合成などで使います。反射マスクに、フレネルシェーダを入れると、オブジェクトの角度により反射される度合いが変化するのでより自然な反射になります。反射度合いは、反射の強度で調整します。
レンダリングの設定と合成方法
マテリアルの設定ができたら、レンダリングの設定になります。レンダリングの設定は簡単です。レンダリング設定の保存にあるアルファチャンネルを有効にして、フォーマットをTIFやPNG、PSDなどアルファチャンネルを保存する形式のフォーマットを選ぶだけです。ファイルフォーマットによりファイルの常態化が変わるので注意してください。
PNGで保存した場合
PNGで保存してPhotoshopで開いた場合、下記の図のように切り抜き済みの画像レイヤーとして開かれます。あとは、合成したい画像にコピー・ペーストするだけです。After Effectsでもそのままレイヤーとして配置すれば下のレイヤーに合成されます。
こちらはレンダリングしたPNG画像です。
TIFFなどのその他のフォーマット
Photoshopでアルファチャンネル付の画像を読み込むと、RGBとアルファが別チャンネルになっています。ですので他の画像に合成する前に、保存されているアルファチャンネルを選択範囲にして、その選択範囲でRGBチャンネルをコピーして合成したい画像にペーストするか、一旦レイヤー化してアルファチャンネルから作成した選択範をレイヤーマスクにすることでも可能です。
After Effectsの場合は、読み込み時にアルファをストレートにすると切り抜いた状態で読み込んでくれるので、あとは合成したレイヤーの上に重ねるだけです。
このシャドウキャッチャーで行う方法のメリットは、設定が簡単でPhotoshopやAfter Effectsでの合成も簡単です。ただ、影とオブジェクトが一つのレイヤーになっているので影の濃度を後から調整するのは難しくなります。
より柔軟な合成は、次回紹介するマルチパスを使った合成になります。