From BlenderWiki
Introduction to Materials
マテリアルを効果的にデザインする方法を理解するには、その前に、シミュレートされた光と表面がBlenderのレンダリングエンジンでどのように相互作用するのか、そしてマテリアルの設定によってそれらの相互作用をどのように制御するのかを理解しておく必要があります。 エンジンを深く理解すれば、それを最大限に活用しやすくなるはずです。
Blenderで作成されるレンダリングイメージは、 viewing planeと呼ばれる架空の表面へシーンを投影したものです。 viewing plane は、従来のカメラにおけるフィルムに類似するもの、または人間の目でいう棹状体と錐状体のようなもので、ただし現実の光ではなく、シミュレートされた光を受信します。
シーンの画像をレンダリングするために、最初に判断する必要があるのは、シーンからのどの光が表示面上の各点に到達しているのかということです。 この質問の答えに到る最善の方法は、直線 (模擬光線) を逆方向に追って、表示面の点および焦点 (カメラの位置) でシーン内のレンダラブルサーフェスに当たるまで追跡することです。 そのポイントでならどの光がその点に命中するかを判断することができます。
表面特性と入射光の角度からは、その光が入射視野角に沿ってどの程度反射されるかがわかります (レンダリングエンジンの基本原理。)。
2つの基本タイプの現象は、光線が当たるとき、表面上のあらゆる点で起こります:拡散反射と鏡面反射です。 拡散反射と鏡面反射は、主に入射光の角度と反射光の角度との関係によって互いに区別されます。
レンダリング時のオブジェクトのシェーディング(またはカラーリング)は、そのベースカラー(拡散反射と鏡面反射現象によって変化させられるのと同様)と光強度を考慮に入れておこなわれます
内部レイトレーサを使うと、他の(より高度な)現象を発生させることもできます。 レイトレースの反射では、光線の当たった表面の点は、材料の反射率(ベースの色と周囲の環境の混合)と視野角に応じて、その周囲の環境の色を返します。
一方、レイトレースされた屈折においては、表面のうち光線のあたっているポイントは、透明性の割合(そのオプションのフィルタリング値によって、ベースカラーと背景の環境を混合)に応じて、その背景の環境の色を返します。透明性の割合は、材料及び材料の随意の屈折率の指標の影響をうけ、視野角を歪曲させます。
もちろん、光線に当たったオブジェクトのシェーディングでは、レンダリングのときに、これらすべての現象をいっぺんに混ぜ合わせます。 オブジェクトの外観は、レンダリングされるときの、相互に関連する多くの設定に依存します:
- World (Ambient color, Radiosity, Ambient Occlusion)
- Lights
- Material settings (including ambient, emission, and every other setting on every panel in that context)
- Texture(s) and how they are mixed
- Material Nodes
- Camera
- viewing angle
- bstructions and transparent occlusions
- shadows from other opaque/transparent objects
- Render settings
- Object dimensions (SS settings are relevant to dimensions)
- Object shape (refractions, fresnel effects)
シェーダ
マテリアルには何列にもおよぶプロパティを持たせることができます。 素材の見え方と、レンダリング時のシェーダの動作の仕方を定義するものすべての組み合わせです。
Diffuse Shading
最初のステップは、diffuse shading informationを追加することです。 ディフューズシェーディングは、マット、半マットのオブジェクト、またはハイライトを欠いている表面にみられるものです。 表面の微細な変化を表現し、入射光を非常に広い角度の範囲に散乱させます。
Specular Shading
CGでは、スペキュラを追加することで、オブジェクトに光沢を表示させることができます。 スペキュラは明るいオブジェクトの表面に当たる反射状態を表現します。 注意する必要があるのは、概して、スペキュラハイライトは、実際にライトを反射しているわけではないということです。 ライトは通常、周囲の環境よりもはるかに明るいので、スペキュラハイライトでこれらの反射を装うことができます。
Reflectivity
オブジェクトの周囲の実際の反射が見えるようにするためには、レイトレーシングと呼ばれる技術を使用して、シェーダに反射をさせることで行えます。 レイトレーシングは、カメラから仮想光線を投げかけ、そしてその光線が反射率を持つオブジェクトを跳ね返って行き着く場所までトレースします。 かならずしもすべての反射が、ミラーや鋼球のように、完全な光沢のあるものとは限りません。 シェーダは、非光沢のような、反射画像をぼかす反射もシミュレートできます。 それは多く計算を伴うので、レンダリングエンジンのための費用がかかります
Transparency
多くの表面は透明、または半透明です。 シェーダは、シンプルにその不透明度を下げることによって透明性を生成することができ、オブジェクトを介して背後を見えるようにできますが、しかしこの方法をオブジェクトの透明表示に使うことは稀です。 Transparecyはレイトレーシングにも同様に利用することができます。 ほとんどの透明オブジェクトは屈折を引き起こし、屈折率の指数の異なるオブジェクトを通過するときに光線を屈曲させます。 コップ水を満たすだけで、屈折がはたらくところが見られます。 Transparencyはまた、ぼかすこともでき、曇りガラスやプラスチック容器のようにできます。 ぼやけた屈折は、ぼやけた反射と同様、CPUに激しい負荷をかけます。
Translucency
材料が光を通過させるものでも、多量に散乱させれば、ぼやけによって透明性が実現できなくなり、シェーダによって半透明性をシミュレートさせることができます。 薄いオブジェクトの場合、半透明の葉、紙、または花のようなものに適しています。 CGでは、半透明性は、面の背面側のシェーディングを計算し、そして反対側に渡すことで動作します。厚いオブジェクトにおいては、 subsurface scattering を使用したくなるはずです
Subsurface Scattering
Subsurface scattering、またはsss、というエフェクトでは、有機材料をシミュレートでき、そこでは光が表面に浸透することができますが、しかし表面下の跳ね返りと散乱、そして出口は異なります。 これは人間の皮膚、ロウソク、チーズ、ブドウ、大理石などのようなもので典型的です。SSSは、素材に品質とリアリズムを加える優れた処理ですが、レンダラのためのコストが高くなるおそれがあります。
Incandescence
一部のオブジェクトは、電球やテレビ等のように、外観に光源を持ってるものや、自身が光源のものがあります。 これは、 shading informationの量を減少させることによって達成できます。
