Unity で何かを描くには、その形状を表す情報と、サーフェスの外観を表す情報が必要です。サーフェスの外観を表すためには メッシュ を使用します。
マテリアルとシェーダーは密接な関係にあり、マテリアルは常にシェーダーと一緒に使われます。
このページには以下の情報が含まれています。
機能 | ビルトインレンダーパイプライン | ユニバーサルレンダーパイプライン (URP) | HD レンダーパイプライン (HDRP) | カスタムのスクリプタブルレンダーパイプライン (SRP) |
---|---|---|---|---|
Materials | 可 | 可 | 可 | 可 |
マテリアルは、シェーダーオブジェクト への参照を含んでいます。そのシェーダーオブジェクトが マテリアルプロパティ を定義する場合、マテリアルが色やテクスチャへの参照などのデータを有することができます。
Material クラスは、C# コードでマテリアルを表します。詳しくは、C# スクリプトでマテリアルを使用 を参照してください。
マテリアルアセットとは、.mat
という拡張子を持つファイルであり、Unity プロジェクトのマテリアルを表します。Inspector ウィンドウを使用したマテリアルアセットの表示と編集については、マテリアルの Inspector リファレンス を参照してください。
マテリアルを使ってゲームオブジェクトをレンダリングするには、以下を行います。
Renderer
を継承するコンポーネントを加えます。MeshRenderer が最も一般的で、ほとんどのユースケースに適していますが、ゲームオブジェクトに特別な要件がある場合には、SkinnedMeshRenderer、LineRenderer、TrailRenderer が、より適していることがあります。マテリアルを使って ビルトインのパーティクルシステム のパーティクルシステムをレンダリングするには、以下を行います。