Blenderシェーダーノード辞典/光沢BSDF(Glossy BSDF)
※記事製作時のバージョン:Blender 3.3
⇒ Blenderシェーダーノード辞典/目次
概要
光沢シェーダーは、サーフェスの反射や光沢を設定するノードです。
※Glossy:光沢のある、つやつやした
詳しく言うと、光沢シェーダーはサーフェスの鏡面反射を設定します。
鏡面反射とは、「物体に当たった光がそのまま綺麗に跳ね返る(入射角と反射角が等しい)反射」のことです。
イメージしやすいところでは、「金属や鏡に物が映る」、「磨いたテーブルに物が映り込む」などがあります。
また、このようなくっきりとした映り込みだけではなく、くすんだ表面のうっすらとした光沢(ハイライト)なども鏡面反射によるものです。
ディフューズなどで地色を設定した上に光沢シェーダーをミックスすると、光沢や映り込みが表現できます。
レンガやコンクリートのような表面がザラザラしたものも含めて、すべての物質には鏡面反射(光沢)があります。
自然な質感を作る場合は、どんな物体でも、必ず光沢を表現する必要があります。
光沢シェーダーの各パラメーターの働きと設定方法は、以下のようになります。
カラー(Color)
反射光の色を設定するパラメーターです。
ここに設定した色(またはテクスチャ)に応じて、反射光の色味が変化します。
カラーの明度(V)は、反射光の減衰に影響します。
白(V:1)の場合、反射光はまったく減衰せず、元の光と変わらない明るさで反射します。
Vが小さくなるほど反射光は弱く(暗く)なり、黒(V:0)では完全に光を反射しなくなります。
粗さ(Roughness)
サーフェスの粗さを操作するパラメーターです。
この値が小さいほどピカピカに、大きいほどモヤモヤした見た目になります。
テクスチャで粗さに変化をつけると、表面の劣化やくすみを表現できます。
下の画像は、マスグレイブテクスチャを使って粗さに変化をつけた見本です。
Distribution(分布)
サーフェスの粗さを表現するための計算方式を選択するパラメーターです。
シャープ、GGX、複合散乱GGX、ベックマン、Ashikhmin-Shirleyの5種類があり、それぞれ光沢の見た目が変化します。
各方式の特徴は次のようになります。
シャープ(Sharp)
粗さを表現しないモードです。粗さの値は無視され、完全に滑らかな鏡面の反射が描画されます。GGX
3DCGで標準的に使われる方式です。複合散乱GGX(Multiple-scattering GGX)
GGXと同じ方式ですが、反射光が暗くなりすぎるのを防ぎます。ただしGGXよりも計算が重くなります。ベックマン(Beckmann)[Cyclesのみ対応]
物理的に正確な光沢が表現できますが、計算が重くなります。Ashikhmin-Shirley[Cyclesのみ対応]
異方性反射の表現に向いています。
下の画像は、CyclesでDistributionを切り替えた比較です(粗さは[0.3]で固定)。
基本的にはデフォルトのGGXのまま使用すればOKです。
他の方式は、特に質感にこだわりたい場合に、表現したい光沢に合わせて切り替えるとよいでしょう。
なお、ベックマンとAshikhmin-ShirleyはCyclesのみ対応です。
EEVEEでこの2つを選択した場合は、GGXとして描画されます。
※マニュアルには複合散乱GGXも[Cyclesのみ対応]と書かれていますが、実際にはEEVEEでも機能するようです。
雑学的な補足:「GGX」とかって、何?
面の粗さは、
1. サーフェス上に様々な向きの微細な面があることにして
2. それらの面で光がバラバラの方向に反射(散乱)する状態を計算する
という方法で表現されます。
※この「擬似的な微細な面」をマイクロファセットといいます。
GGX、ベックマン、Ashikhmin-Shirleyは、この微細な面の向きがどのように分布するか(マイクロファセット分布)の計算モデルの種類です。
複合散乱GGXはGGXと同じモデルですが、微細な面の間で反射光が跳ね返るのも計算して、反射光が暗くなりすぎるのを防ぐ方式です。
光沢シェーダーの使い処
プリンシプルBSDFが導入される以前(Blender2.7の頃)は、基本的な質感を作るために、ディフューズや光沢などをミックスする必要がありました。
今はプリンシプルBSDFがあるので、基本的な質感はプリンシプルBSDFを使うだけで、簡単・リアルに作れます。
そのため現在では、光沢シェーダーは「基本的には使う必要はないが、凝った(特殊な)質感を作る時、反射光(光沢)を設定するのに使う」という位置付けになっています。
使用例:特殊なコーティング
特殊な塗料やフィルムでコーティングされた材質は、光沢が特定の色を帯びることがあります。
プリンシプルBSDFでは光沢に特定の色をつけることはできないので、そのような光沢は光沢シェーダーで設定します。
【使用した3Dモデル】
Material ball in 3D-Coat - Download Free 3D model by 3d-coat (@3d-coat) [a6bdf1d] - Sketchfab is licensed under Creative Commons Attribution
よろしければサポートお願いします。いただいたサポートは次の記事の制作費になります。