顔モーフの次はやっぱりテクスチャ、というわけでAさんのHeadとBodyのテクスチャとバンプマップとスペキュラーマップをえんえんと手直ししていた。
左が今までのAさんで、右がモーフとテクスチャとマテリアルがリニューアルAさん。凹凸が減ってマテリアルの代替鏡面にブリンを配合して、だいぶ肌が明るくなった感じ。
これでもう24には見えないとか言われることはない……かなあ(笑)。
AさんのHeadとBodyのテクスチャはイチから手描きしている(口内とか爪とか目立たないところはじぇーむずのマップを色調補正して使っている)。リソース的なものを切り貼りすればリアルになるんだろうけど、そのへんはあまり追求してない。写真ベースの売り物テクスチャを貼ったデフォルメちっくなまいこーさんには、手描きテクスチャを貼ったリアル造形じぇーむずでバランスが取れてるんじゃないかな、と。
眉は好きな形の眉の写真をスキャンして、それをガイドに描いていった。Photoshopの塗りつぶしレイヤーに暗い色を設定して、そのマスクに極細エアブラシで一本ずつ線を引く。でもって塗りつぶしレイヤーを2、3層重ねて後から色を調整する。明るい色だとレンダしたときによく見えないのだ。
Bodyテクスチャも改良、ついで今までなかったバンプとスペキュラマップを描き起こし。
ところで、このブログでは主に拡散色ノードに接続する画像のことを「テクスチャ(マップ)」と呼んでいるけど、もともとテクスチャといえば「質感」という意味。オブジェクトの質感を設定する画像は、バンプもトランスもアンビエントもスペキュラも全部厳密にはテクスチャマップなんである。とはいうものの、バンプや鏡面値にマップを使わないようなちょっと前の3DCGでは、テクスチャは拡散色マップしか用意されてないことが多いし、単にテクスチャといえば拡散色マップだと思ってほぼ間違いない。マップの種類でよく使われるカタカナをおさらいしておくと、
- 拡散=カラー=ディフューズマップ
- 鏡面=光沢=スペキュラマップ
- 環境=発光=アンビエントマップ
- 透明度=アルファ=トランスマップ
- バンプ=バンプマップ
といったところ。「マップ」と呼ぶのは、オブジェクトがどういう値や色を持つのかをその画像が指し示している、つまり地図の役割を果たしているからだ。
初心者がテクスチャマップと混同しやすいのがUVマップ。UVマップはテクスチャ画像とは違い、オブジェクトのマッピング方式にUVという方式を使用する時に、そのUV値を視覚化したものだ。
マッピングはそもそも三次元の立体であるオブジェクトに、二次元のテクスチャ画像をどうやって割り当てていくか、その方法を指定する。ある一方向から映写機みたいに投影する平行投影や、のり巻きみたいにオブジェクトを円筒状に包む円柱方式、サイコロのように六面から貼り付ける立方体方式などがあるけど、その中で一般的なのがUVマッピングだ。
UVマップはオブジェクトの頂点一つ一つを、二次元の画像の座標に割り当てる。球体であるミカンの皮を剥いて、平面であるコタツの上に並べるような感じだ(もう五月だってのにこの喩え……)。
すると、UVマッピングではオブジェクトの頂点が「二次元ではどの位置に来るか」という情報を持つことになる。それがUV値で、実際にUV値を設定するのはオブジェクトの製作者である。いわゆる「UV展開」という工程だ。もちろん設定しないこともあるわけで、UV値を持たないオブジェクトはUVマッピングで画像を貼り付けることができない。でもって、そのオブジェクトの持つUV値を二次元にプロットしたものがUVマップである。
どうして「UV」と呼ぶのかというと、xとyとzの座標で設定される三次元とは「まったくの別次元である」ということを示すためにxyzとは違う座標系を用いるからである。xもyもzも使えないのでuとvとwを使うわけだ。画像は二次元だからwは使わないけど。
個人的には、テクスチャの解像度はバンプ>テクスチャ(ディフューズ)>スペキュラの順に必要になると思っている。テクスチャは多少低解像度でも補間されるし、そんなに粗は目立たない。第一、人間の目は狭い領域での微妙な色味の違いにはそんなに敏感じゃない。バンプマップはオブジェクトの表面に細かな陰影を付け加える。たとえ凹凸がハッキリ見えるほどクローズアップしなくても、陰影の変化や鏡面反射の広がり方に大きく影響しているのだ。人間の目は、明るさの違いにはそれなりに敏感なんである。
一番解像度が必要でないと思うのがスペキュラ。スペキュラマップは鏡面反射の強さを指定するけど、実際ミリ単位で急激に鏡面反射率が変化するような材質はあんまりない。もっともこれは人体など自然物の話で、工業製品の材質なんかはその限りではないけど。というわけで、画像の容量を削減したいような場合は、スペキュラマップから縮小していけば質感に与える影響は少ないだろう。
とまあ、いまさらながら初歩的っぽい話をしてみたりして。このブログを読んで下さってる方がCGに詳しい人ばかりとは限らないし、たまには立ち返ってみるのもいいかな、と。
こんな光景。