導入

マテリアルはメッシュ、カーブあるいはその他のオブジェクトの見た目を定義します。マテリアルは 3 つのシェーダーからなり、メッシュの surface (サーフェス)の見た目、メッシュ内部の volume (ボリューム)、そしてメッシュのサーフェスの displacement (ディスプレイスメント)です。

../../../_images/render_cycles_materials_introduction_shaders.svg

サーフェスシェーダー

サーフェスシェーダーはメッシュ表面の光に対する反応を定義します。

ボリュームシェーダー

サーフェスシェーダーが光線を反射しないかもしくは吸収する場合、その光線はボリュームに入射します。もしボリュームシェーダーが定義されていない場合、入射した光線は反対側のメッシュに向かって通過します。

ボリュームシェーダーが定義されている場合、ボリュームシェーダーはメッシュのボリュームを通過する光線に対する反応を定義します。光線はボリューム内のあらゆる場所で錯乱、吸収あるいは発射されます。

一つのマテリアルはサーフェスシェーダーとボリュームシェーダーの両方、もしくはいずれか一つだけを持ちます。両方を用いてサーフェスでガラスや光沢を表現するシェーダーを組み合わせる事は、光線をある程度吸収させながらその表面を通過させるガラス、水や氷といったマテリアルを表現する上で役立ちます。

ディスプレイスメント

サーフェスの形状と内部のボリュームはディスプレイスメントシェーダーによって変化する場合が有ります。これを用いると、メッシュの表面をより詳細に表現するのにテクスチャを用いる事ができます。

設定によって、ディスプレイスメントは仮想的な物や、サーフェスの法線に対してのみディスプレイスメントの度合いを影響させるバンプマッピングと呼ばれる手法や、実際のディスプレイスメントと仮想のディスプレイスメントとを組み合わせる事ができます。

エネルギーの節約

The material system is built with physically-based rendering in mind, cleanly separating how a material looks and which rendering algorithm is used to render it. This makes it easier to achieve realistic results and balanced lighting, though there are a few things to keep in mind.

In order for materials to work well with global illumination, they should be, speaking in terms of physics, energy conserving. That means they cannot reflect more light than comes in. This property is not strictly enforced, but if colors are in the range 0.0 to 1.0, and BSDFs are only mixed together with the Mix Shader node, this will automatically be true.

ただ、1.0 より高いカラー値もしくは Add Shader ノードを用いる事でこの状態を破綻させる事ができますが、予想される多様な光源下でのマテリアルの振る舞いを維持するため、その処理を行う場合は注意する必要があります。反射する度に光量を増加させる設定によって、 BSDF がエミッターのようになってしまうかもしれません。