Maya2017 ArnoldでSSSに「挑戦」してみる⑨ SSSだからできる刺青の表現?

どうも!Maya太郎です。
SSS(サブサーフェース スキャッタリング)やってみた企画も長くなりすぎましたので、そろそろ一旦区切りをつけたいところです。
奥が深いし、答えも無いし、でもやってみると面白いですね。
ということで、今回は偶然発見したSSSの副産物についてお知らせいたします。
以前の記事から少し間を空けてる間、試行錯誤を裏で行っており
最新バージョンは現在こんな感じ(↓)だったりします。
法線マップの起伏はあきらめてポリゴンによる大きなしわを表現しています。
しわがつぶれない程度の10万ポリゴンまで減らしましたので、データとしては重たくはないはずです。
まつ毛と眉毛を追加しました。急ぎで作業したので宙に浮いてるまつ毛もあります(苦笑)
11-1以前の記事では書いていませんが、実は唇の色の調整が非常に困難でした。
唇部分を赤く塗っても、SSSの各レイヤーの処理(乱反射)によって、そのままの色でのレンダリング結果にならなかったからなのです。

 

■ちょっとおさらい■

皮膚の薄い各層を乱反射する光を表現するのがSSS(サブサーフェース スキャッタリング)なのですが
(赤枠部分は今回無関係です)

7-3

ユーザーガイドを参考に、SSSの処理に必要な三層のマップデータを用意するわけです…5-4

見よう見まねで再現するのですが、サンプル通りうまくいかないことも多々あり…
で、気がつけばこんなマップになっていました。
11-2b
唇の色表現は中央のMid Scatterで行い両端のレイヤーは唇への影響を与えないように「逃げた」というわけです。唇は本来、毛細血管の集まった結果赤っぽく見えるので、医学的には右端のDeep Scatterで行いたかったのですが、うまく制御できなかったのです。(無念)

■思わぬ副産物■

Deep Scatterのレイヤーで血管表現できないものかと、挙動確認用に血管を描き込んでみたところ
11-3
お!
では、これでは!
11-4
Deep Scatterに黒のカラーを入れると、SSSの乱反射の原理で表層には緑(青緑?)っぽい色となって浮き出てきました。
実際の仕組みとは違うと思いますが、これって刺青(タトゥー)の色じゃないの?と思ったわけです。
静脈が青っぽく見えたり、ひげの濃い人が青っぽい肌をしていたり、そういう原理はSSSの計算でもきちんと反映されているんだなぁと思った…わけです。

ひげなどの処理をテクスチャで表現してみたところ、うっすらですが効果はあるようです。
剃り跡の生々しさが再現できた?
この原理が正しいかはわかりませんが…
11-5
残念ながらこのDeep Scatterでの青っぽさはうっすらとしか表現できないのでMid Scatterでも同様の効果があるか試してみます。

Mid Scatterにもひげなどを加えました。
さきほどよりも濃くなりましたが、上層のShallow Scatterの効果が効いているので完全に黒くはなりません。
ある意味リアルですが…
11-6

Shallow Scatterにもひげなどを加えました。このレイヤーのマップの挙動は他のレイヤーと違って、黒成分はShallow Scatterの影響を受けずに下層のレイヤーそのままの発色になるようです。(「黒」だと乱反射が無効になるということらしい)
この方法も、正しいSSSの作法とはかけ離れている気がするので、おススメはしませんが…11-7

まゆ毛や無精ひげなどをマップ表現で正確に再現するならば、スキンシェーダーだけでなく
レイヤーシェーダーを使って、皮膚の層とそれ以外の層をシェーダー単位でレイヤー分けをして合成したほうがいい仕上がりになるでしょうね。(面倒ですが)

口紅や派手な化粧もそうですが、本来の皮膚の乱反射を覆い隠すような厚塗りを伴うメイクの場合は
もはやSSSで処理する必要はないと思われます。

皆様もいろんなマップデータを作って挙動を楽しんでください!
フォトショップのレイヤーを保持したまま読み込める形式(PSD,TIFFなど)であれば試行錯誤も簡単ですよ!