Blenderシェーダーノード辞典/ディフューズBSDF(Diffuse BSDF)
※記事製作時のバージョン:Blender 3.3
⇒ Blenderシェーダーノード辞典/目次
概要
ディフューズは、サーフェスの色を設定するノードです。
カラーに設定した色がサーフェスの色になります。
詳しく言うと、ディフューズは色そのものではなく、サーフェスの拡散反射を設定します。
※diffuse:拡散 diffuse reflection:拡散反射、乱反射
拡散反射とは「物体の表面に当たった光が様々な方向に散乱しながら反射する現象」のことで、私たちが目で見る色の元になる光です。
ディフューズは「サーフェスがどのように光を反射するか」をシミュレーション的に設定するので、周囲の照明を反映したリアルな色が表現されます。
ディフューズが表現するのは拡散反射(色)だけなので、いわゆる反射や光沢はまったく表現されません。
反射や光沢を含む自然な質感を表現するには、下の見本のように光沢シェーダーをミックスする必要があります。
この場合、フレネルやレイヤーウェイトでミックスの係数を操作すると、よりリアルな反射や光沢が表現できます(下の見本ではフレネルを使っています)。
ディフューズの各パラメーターの働きと設定方法は、以下のようになります。
カラー(Color)
サーフェスの色を設定するパラメーターです。
ここに設定した色(またはテクスチャ)が、サーフェスの色になります。
粗さ(Roughness)[Cyclesのみ対応]
サーフェスの粗さを操作するパラメーターです。
この値を大きくすると、コンクリートや石膏のような、ザラザラした表面の雰囲気になります。
下の画像は、粗さ[0]と[1]の比較です。
微妙な差ですが、粗さ[0]は何となくツルッとした感じで、粗さ[1]は全体的にザラザラした感じになっています。
※粗さはCyclesのみ対応です。EEVEEの場合、値を変えても見た目は変化しません。
雑学的な補足:粗さの仕組みについて
粗さについて、マニュアルでは次のように記載されています。
ランバート反射とオーレン・ネイヤーBSDF(オーレン・ネイヤー反射)は、拡散反射の計算方式の種類です。
もう少し詳しく説明すると、次のようになります。
ランバート反射:古典的な拡散反射モデル。拡散光を単純化して表現する。表面が粗い物体の拡散光はうまく表現できない。
オーレン・ネイヤー反射:物体表面の微細な凹凸を考慮した拡散反射のモデル。表面が粗い物体の拡散光も正確に表現できる。ランバート反射に比べて計算量が増える。
これを踏まえてマニュアルの記載を分かりやすく言い換えると、
「粗さの値に合わせて拡散反射の計算方式を切り替えることで、サーフェスの粗さ(滑らかさ)を表現します」
となります。
※EEVEEはオーレン・ネイヤー反射に対応していないので、粗さの値に関わらず常にランバート反射で描画されます。
参考:ランバート反射 - Wikipedia、オーレン・ネイヤー反射 - Wikipedia
ディフューズの使い処
プリンシプル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
よろしければサポートお願いします。いただいたサポートは次の記事の制作費になります。