parent
Parent of this material.
Read time 1 minuteLast updated 4 days ago
Definition
- Type: Property
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
public Material parent { get; set; }
Remarks
Materials with a non null parent are referred to as material variants.
Material variants will inherit all their properties from their parent, and can override them on a per property basis. Changing the value of a property of a material will therefore impact all variants below in the hierarchy.
This property is only available in the Editor, in a built project all material hierarchies are flattened.
Examples
using UnityEngine;using UnityEditor;public class Example : MonoBehaviour{#if UNITY_EDITOR [MenuItem("GameObject/Create Material Variant")] static void DuplicateMaterial() { Material selected = Selection.activeObject as Material; if (selected == null) return; // Create a material variant from selected material // And override it's color to red Material material = new Material(selected); material.parent = selected; material.color = Color.red; AssetDatabase.CreateAsset(material, "Assets/" + selected.name + " Variant.mat"); }#endif}