見出し画像

blender 4.2 マテリアル Thin Film, Thickness | 薄膜、幅

4.2 より、プリンシプル BSDF に「薄膜(Thin Film)」、マテリアル出力に「幅(Thickness)」の、新設定項目が追加されました。
ここでは、その2つの設定値について、かんたんに整理してみました。 


環境 Blender 4.2.0 , Mac Mini M1 OS 14.4



Thin Film(cycles only)


プリンシプル BSDF の「薄膜」では、文字通りひじょうに薄い膜の影響をシミュレートする。塗装膜などを表現する「コート」に似ているかもしれないが、その厚さの単位は nm (ナノメートル。10億分の1メートル)と、 桁違いに薄い。cycles のみ適用される。

下のレンダリングは、UV球を配置し、通常のグラスマテリアル(IOR 1.33 伝播 ウェイト 1.0)を適用。

ライトは、背景のHDRI の環境光のみ

薄膜を適用し、ノイズテクスチャで、膜の厚さに変化を加えた。

ノイズテクスチャ - 範囲マッピング(Mapping Range)ノードを、薄膜の厚さに接続

表面に、シャボン玉にみられるようなカラーの変化が現れる。ここでシミュレートしているのは、実際のシャボン玉の色の変化と同じ。

わたしの乏しい理系理解によれば、薄膜に当たった光の一部は表面で反射し、一部は、内部で屈折して(屈折の角度は後述の「薄膜のIOR」値によって決まる)、底で反射する。膜は極薄のため2つの光は近い位置にあり、それぞれの光の波が干渉する。加えて、膜の厚さには微細な不均一性があるため、波長も変化し、反射の場所によってさまざまな色の光がみえる。

単純な模式図。間違いはご指摘ください。


あらためて上の「薄膜」を適用したノードをみる。膜の厚さの不均一性は、ノイズテクスチャによって与える。黒のエリアが薄く、白のエリアは厚い。

ノイズテクスチャ

ノイズテクスチャが出力する値は、0.0〜1.0 なので、範囲マッピングノードで 400〜800 まで 増幅し、「薄膜の厚さ」 に値を渡している。

実際のシャボン玉の膜の厚さは、約 4 nm とのことだが、この数値では効果が見られなかったので増やしている。「薄膜の IOR」 は大きいほど効果が現れやすいが、1.5 〜 2.0 くらいが適当のようだ。

活用

シャボン玉だけでは応用範囲が狭いので、プラスチック状のオブジェクトに適用してみる。

通常のプラスティックマテリアル。左 薄膜の厚さ適用なし 右 薄膜の厚さ適用あり
調整は範囲マッピングの拡大値、薄膜のIOR の各値で

反射にやや変化が生まれ、油膜がうすく付着しているような表面になった。

伝播 ウェイト 1.0 としガラスマテリアルとした。右 薄膜の厚さ適用あり
サブサーフェス(ランダムウォークスキン)を適用
半径 0.2 1.0 0.1 スケール 0.1 右 薄膜の厚さ適用あり

いずれのパターンも、表面に微妙な不均一性が生じ、リアルな質感の表現の一助になるようだ。

粗さ、や、ノーマルマップなどの起伏による表面の不均一性と異なるのは、反射色にも多様性があることだろう。現実のモノもなんらかの微細な膜をまとうことが多いので、フォトリアルな表現には有用と思われる。


Thickness(EEVEE only)


4.2 より、マテリアル出力に、「幅」の設定値が追加された。EEVEE のみ有効。負担の軽い処理で、マテリアルに厚さを適用できる。

Subsurface Scattering(サブサーフェス)、Translucent(半透明)、 Refraction(屈折) BSDF とそれを含む BSDF(プリンシプル BSDFを含む)で効果がある。

EEVEE での半透明系のマテリアルに有効とのことだろう。現状でマニュアル以外の情報に乏しい。なお個人的には、Thickness の訳語は「厚さ」が正しいと思う。

サブサーフェスを適用した、左から、平面、モデリングでやや厚みをつけた立方体、同じく厚みをつけた立方体に、ノイズテクスチャによる「幅」の不均一性を与えた。

EEVEE レンダープレビュー。わかりやすいように、底からポイントライトを当てている。

「幅」値に変化を加えているため、平面以外はサブサーフェスによる透光の様子に変化がみられる。

現状の理解では、平面オブジェクトには効果がないようだ。すこし形状による厚みを加えると効果が現れる。

サブサーフェス > ランダムウォーク スケール 1.2(多めに)

上のマテリアルのシェーダーノード。ノイズテクスチャで、幅 0.0 〜 1.0 までの厚みをランダムに設定している。均一な値を与えるとしたら、値(Value)ノード。

赤色の透光があるのは、サブサーフェスの半径の上段(Red)の値がもっとも大きいため。

活用

葉のオブジェクトを作成し、やや厚みをつけ、上と同様に下からポイントライトを当てた。

左 「幅」適用なし 右 「幅」適用あり
RGBカーブで幅の微調整を行った。

ベースカラーの葉の画像を加工したモノクロ画像を「幅」に接続し、黒のエリアが薄く、白のエリアを厚く幅を設定した。
単にサブサーフェスを適用した左と、サブサーフェス + 幅を適用した右では、微妙ではあるが、ややリアルな雰囲気はあるかもしれない。

このほか、障子のような変化のある薄い紙にも使えるだろうし、ガラスマテリアルにも有効なので、すこし汚れたガラス窓などにも使えるだろう。


まとめ


どちらも追加されてまだ間もない機能なので情報が少なく、上の紹介にとどまっていますが、なにかしら情報を拾えることができれば、書き加えたいと思います。
個人的には、「幅」機能は、応用の広そうなすこしおもしろい機能にみえるので、cycles にもほしいところですが、屈折、サブサーフェスなど半透明系にすこし弱い EEVEE の、補助機能のような側面かもしれません。参考まで。


参考


blender のおかげで、シャボン玉がなぜ虹色なのかということを、そこは文系なので、かなりあやふやに中途半端に理解することができました。ただ、「あれは実は光の干渉で…」などとだれかに披露しても、だーれも聞いてはくれないでしょうけれど。

いいなと思ったら応援しよう!