今回はCGコンプの基本的なところを紹介しようと思う。実写合成でのCGインテグレーションというよりは、もっとライティングコンプに近いところになるが、3DCG素材をどうやってコンプでより良くするかというところにフォーカスしたいと思う。
TEXT_テラオカマサヒロ(Galaxy of Terror)
EDIT_山田桃子 / Momoko Yamada
AOVs
以前にも少し紹介したが、最近のレンダラはだいたいAOVs(Arbitrary Output Variables)と呼ばれるレンダラが画を作る際に計算したものを、副産物的に別々に出力できたりする。
mtoa(arnold for maya)でのaISurface(alShaders)でのAOVsのインターフェイス例。デフォルトではないが、www.anderslanglands.com/alshaders/index.htmlで配布されているalShadersはとても強力だ。
場合によっては画を作る際に計算したもの以外のものも出力できることもあるが、そんな感じで3DCGの完成画を構成するための各要素のようなものを出力できる。
この手の話の上で、3DCGの完成画は"beauty"とよばれる。beautyは"direct diffuse(直接拡散反射光)"、"direct specular(直接鏡面反射光)"、"indirect diffuse(間接拡散反射光)"、"indirect specular(間接鏡面反射光)"、"refraction(屈折光)"、"sss(表面下散乱光)"などで成り立っている。
レンダラによって名称が違ったり若干出力できるものが違ったりするが、概ねはこれらで構成されている。今回は、読者にもなじみのあるV-Rayを用いて進めたいと思う。
V-RayにおけるbeautyがAOVsに反映できる構成要素は"lighting(直接拡散反射光)"、"specular(直接鏡面反射光)"、"GI(間接拡散反射光)"、"reflection(間接鏡面反射光)"、"refraction(屈折光)"、"sss(表面下散乱光)"となっている。
V-RayでのAOVsのインターフェイス例。V-Rayはデフォルトである程度のAOVsの出力が可能になっている。特にカスタマイズを必要とせずライトコンプを行うことができる。shadow(collector)系のAOVsがでないのは少し残念ではある
そして、beautyはこれらのレンダーパスの足し算でできている。つまり、beauty="lighting"+"specular"+"GI"+"reflection"+"refraction"+"sss"である。
※V-Rayではdiffuseをlightingとよんでいる
左がbeautyそのもの。右がAOVsからbeautyを再現したもの。今回の例の場合、refractionとsssが構成要素として無いので、beauty="lighting"+"specular"+"GI"+"reflection"で再現している。
上記のように各構成要素から3DCGの完成画をコンプ内で再度つくり上げることを、便宜上、ここではbeautyの再構築と呼ぶことにするが、beautyの再構築の利点は、たとえば、CGオブジェクト上のある光沢だけを消したい時や、たとえば、回り込んでいるライティングを強めたい場合など様々なケースでbeautyの再構築にはアドバンテージがある。後者の例は、上記であげた構成要素以外にnormalと呼ばれる法線情報が必要になったりする場合もあるが最近のレンダラであれば、それもAOVsとして出力が可能だ。
normalパス。各ピクセルがX,Y,Zの方向をどれだけ向いているかをRGBにそれぞれ格納している。RGBをの各チャンネルをバラバラに見てみると、その役割が分かりやすい。黒くなっているところにもマイナス値で情報は存在している