- Home
- V-Ray for 3dsMax, V-Ray for Maya
- [V-Ray] alSurface シェーダーのメモ
ブログ
10.72016
[V-Ray] alSurface シェーダーのメモ
ChaosGroup Labo ブログに alSurface SSSシェーダーの記事が掲載されています。
https://labs.chaosgroup.com/index.php/rendering-rd/v-rays-implementation-of-the-anders-langlands-alsurface-shader/
VRaySkinMtl と alSurface SSSシェーダーの違いが簡単にまとめられていたので紹介致します:
Diffuse:
VRay Skin Mtl: DiffuseとSub-Surfaceは異なるマップで定義され、Diffuse amount で双方がブレンドされます。
alSurface: DiffuseとSub-Surfaceは同じマップで定義され、ランバート拡散に対してサブサーフェスがどれくらい影響するかによって混合されます。
サブサーフェススキャッタリング:
VRay Skin Mtl: 均一に一緒に混合される3レベルの深度別マップで定義されます。SSSは標準ダイポールモデルを使用します。
alSurface: VRaySkin同様に3レベルの深度マップがありますが、各レベルにウェイトコントロールを持っています。また複数のSSSモデルを選択できます。現在のVRayalSurfaceでは2つのSSSモデルが実装されています。”Diffusion”モデルは標準ダイポール・モデルと比較してよりディテールを保持します。”Directional”モデルはシングルスキャッターの近似でさらに詳細なディテールを保持します。
リフレクション(スペキュラ):
VRay Skin Mtl: 鋭い反射とぼかした反射の組み合わせでBRDFモデルはPhongです。Phongモデルは視射角(エッジ付近)でSSS効果をカットアウトし反射が暗くなる傾向があります。これはフレネル効果が視線とサーフェス法線に基いてのみ計算され、サーフェスに入射する光の方向は無視される事が原因です。
alSurface: VRay Skin Mtl同様に鋭い反射とぼかした反射の組み合わせを使用します。しかしBRDFはmicrofacet系のBRDFが使用されます。フレネルがBRDFの一部として計算され視線とサーフェス法線、光の入射方向が考慮されます。(別名”glossy Fresnel”とも呼ばれます)
ユーザーはBRDFとしてGGXとBeckmannを選択できます。このBRDFはmicrofacet(表面の微細な構造)を近似する物で、Phongモデル等で起こる視射角(エッジ付近)で暗くなる効果を回避する事ができます。
またmicrofacet系BRDFを使用する事で視射角(エッジ付近)のSSSをカバーする事ができます。
他の注目すべき違い:
フレネルで使用されるIORはVRaySkinMtlとalSurfaceでは異なった計算方法で使用されます。同じIOR値を両方に入力した場合、alSurfaceは強く反射するように見えるでしょう。
VRaySkinMtlのglossinessは高い値になる程、ぼかしが無くなります。つまり鋭い反射になります。一方でalSurfaceのroughness は高い値程ぼかしが強くなりマット(つや消し)になります。従ってVRaySkinMtlのglossinessマップとalSurfaceのroughnessマップは逆にする必要があります。
VRay Skin MtlにてDiffuse amountを 1.0 にする事は 100% diffuseマップを意味します。alSurfaceでのSSS blends 1.0 は 100% SSS を意味します。Single Scatter Mapマップ等は VRaySkinMtlとalSurfaceで値を反転する必要があります。