Unity のレンダリングは マテリアル と シェーダー と テクスチャ によって行われます。
Unity のマテリアルとシェーダーとテクスチャは密接に関係しています。
マテリアル は、使用するテクスチャ、そのタイリング設定や色調などへの参照を含んで、どのようにモデル表面を描画するかを定義します。マテリアルに用意されたオプションで、どのシェーダーをそのマテリアルに使用するかを決めます。
シェーダー は、光源入力とマテリアル設定をベースにして、ピクセル毎の描画色を計算するための数学的な計算とアルゴリズムを内包した、小さなスクリプトです。
Textures はビットマップ画像です。マテリアルにはテクスチャへの参照が含まれ、それによりマテリアルのシェーダーは、オブジェクト表面の色を計算するのに、テクスチャを使えるようになります。加えて、オブジェクト表面の基本色(アルベド)では、反射率や粗さなどのマテリアル表面のさまざまな要素をテクスチャで置き換える事ができます。
1つのマテリアルには、特定のシェーダー1つを使います。そしてそのシェーダーはマテリアルにどのオプションを使うかを決定します。使用されるテクスチャ変数を1つまたはそれ以上設定されたシェーダーには、Unity のマテリアルインスペクターから、それらのテクスチャ変数にどのテクスチャアセットを使用するか、指定することができます。
多くの一般的なレンダリング(人物、風景、環境、透明な個体、硬質・軟質な表面などのレンダリング)では通常、スタンダードシェーダー を使用するのが最善の選択です。このシェーダーは現実性の高い手法で、さまざまな種類の表面をレンダリングする能力を持つ、カスタマイズ性が高いシェーダーです。
それ以外にも異なる特性を持つシェーダーが用意されています。さらに、望みのカスタムシェーダー(例えば液体や群葉、反射するガラス、パーティクルエフェクト、アニメ調・イラスト調やその他の絵画調効果、それにナイトビジョンやヒートビジョン、X線ビジョンのような特別な効果、等々)を書く事もできます。
詳しくは次のページで説明していきます。