文系の blender 4.1 | Principled Volume プリンシプルボリューム
シェーダーノードのひとつに、雲や煙、霧などのマテリアルに用いられるボリュームシェーダーがあります。通常は、あまり利用頻度の高いシェーダーではないかもしれませんが、本来の用途のほかにも、透明、半透明のマテリアルに、ひと工夫加えたい場合にも使えそうです。
ここでは、統合ボリュームシェーダーのプリンシプルボリュームの各値とその用途についてかんたんにまとめてみました。
なお、物理関連についての説明はあくまで文系の理解範囲内になります。間違いについてはどうぞご指摘ください。
環境 Blender 4.1.0 , Mac Mini M1 OS 14.4
ボリュームの散乱 吸収
霧や煙などを、blender ではボリューム(Volume)と呼び、そこへ光が通る際、ボリューム内の粒に光があたって跳ね返ることを、散乱(Scatter)と呼ぶ。また、一部の光は粒に吸収され、その残り(その波長)が通り抜ける。これを吸収(Absorption)と呼ぶ。


Principled Volume
プリンシプルボリュームノードは、従来の ボリューム散乱(Volume Scatter)、ボリューム吸収(Volume Absorption)ノードを統合し、放射など機能を追加したノード。

このノードを接続することにより、オブジェクトの内部にボリュームが発生する。
Density | 密度
下では、直径 20 cm の UV球を作成し、上のプリンシプルボリュームノードを設定した。「密度」はボリュームの濃度。


「密度」に生成、画像テクスチャ等を接続することで、密度の濃い薄いエリアを分けることができる。画像の白寄りが濃い、黒よりが薄いエリアになり、上では、数式ノードでそれぞれの濃度を 10 倍に設定した。
Color | カラー
カラーでは、上述の Volume Scatter 散乱光の色を設定する。
「カラー属性」は、ボリュームシミュレーションのドメインに関係する値でここでは省略する。通常はデフォルトのまま。

右は、左よりも強い青色の照明を当てた。ボリュームの色そのものには大きな影響はないようだ。

「密度属性」もシミュレーションのドメインと関係する。通常はデフォルトの density のまま。
Anisotropic | 異方性
異方性は散乱光の方向を限定する値。デフォルトの 0 ではすべての方向に散乱するが、 -1.0 あるいは 1.0 に近くなると、一方向に限定される。


背後からのエリアライト1 灯のみの場合。1.0 では床が反射しているのだろうか、挙動の正確な操作については現状でよくわかっていない。物理的な正しさからも、通常はデフォルトのままでよいと思われる。
Absorption Color | 吸収カラー
前述の吸収(Absorption)光の色を設定する。
おそらく正確には、吸収されずに通り抜けてきた光の色と思われる。

吸収カラーを、明るめの赤に設定すると、カラー(散乱光)の青はほぼ反映されない。

吸収カラーを暗めに設定すると、カラーの青が優勢になる。

黒は光を吸収しやすいため、ほぼすべてが吸収されてしまい、通り抜けてくる吸収カラーがゼロになるためではないか。
文系的には、吸収カラーは明るいほど影響が強い、という理解で留めておく。
Emission | 放射
放射(Emission)ノードや、プリンシプル BSDF の同設定値と同じく、ボリュームが発光する。

Blackbody | 黒体
放射とは別に、発光色を「色温度」で設定できる。


ボリュームシミュレーションで、炎や煙などを表現する際に有用。温度特性は通常は、Temperature のまま。
Surface
煙や霧などを表現する場合には、もちろんサーフェス(表面)は必要ないが、サーフェスにプリンシプルBSDFなどを接続することにより、半透明マテリアルのひとつとして利用できる。


外側(サーフェス)は、アルファ、あるいは伝播(Transmission)で透明にすることになるが、伝播のみではボリュームの色調が異なってみえることがあるので、ここでは、アルファを 0.2(8割透明)とした。


まとめ
フォトリアルのマテリアルの場合、とくに有機物系で、微妙に半透明であることが多く、それらの要素のひとつとしてボリュームの設定を確認してみました。やや処理が重い難点はありますが、透明、半透明マテリアルの内部に、曇りのような表現を加える際などにも有用でしょう。
もちろん、雲や煙のマテリアルとして、本来の用途にも使えます。参考まで。
