Unity で何かを描くには、その形状を表す情報と、サーフェスの外観を表す情報が必要です。サーフェスの外観を表すためには メッシュ を使用します。
マテリアルとシェーダーは密接な関係にあり、マテリアルは常にシェーダーと一緒に使われます。
このページには以下の情報が含まれています。
機能 | ビルトインレンダーパイプライン | ユニバーサルレンダーパイプライン (URP) | HD レンダーパイプライン (HDRP) | カスタムのスクリプタブルレンダーパイプライン (SRP) |
---|---|---|---|---|
マテリアル | あり | あり | あり | あり |
マテリアルは、シェーダーオブジェクト への参照を含んでいます。そのシェーダーオブジェクトが マテリアルプロパティ を定義する場合、マテリアルが色やテクスチャへの参照などのデータを有することができます。
Material クラスは、C# コードでマテリアルを表します。詳しくは、C# スクリプトでマテリアルを使用 を参照してください。
A material asset is a file with the .mat
extension. It represents a material in your Unity project. For information on viewing and editing a material asset using the Inspector window, see Material Inspector reference.
マテリアルを使ってゲームオブジェクトをレンダリングするには、以下を行います。
Renderer
を継承するコンポーネントを加えます。MeshRenderer が最も一般的で、ほとんどのユースケースに適していますが、ゲームオブジェクトに特別な要件がある場合には、SkinnedMeshRenderer、LineRenderer、TrailRenderer が、より適していることがあります。マテリアルを使って ビルトインのパーティクルシステム のパーティクルシステムをレンダリングするには、以下を行います。
Unity supports functionality for creating variants of Materials. To learn more about this functionality, see Material Variants.