UnityEditor.MaterialEditor.SetShader C# (CSharp) Method

SetShader() public method

public SetShader ( Shader shader ) : void
shader UnityEngine.Shader
return void
        public void SetShader(Shader shader)
        {
            this.SetShader(shader, true);
        }

Same methods

MaterialEditor::SetShader ( Shader newShader, bool registerUndo ) : void

Usage Example

 //TODO: see if there is a better callback function
 public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] properties)
 {
     string content = File.ReadAllText(TEMPLATE_PATH);
     content = content.Replace(ORIGINAL_SHADER_NAME, string.Format(SHADER_NAME_SYNTAX, materialEditor.target.name.Split(' ')[0]));
     content = content.Replace(PRE_EDITOR, EDITOR);
     File.WriteAllText(string.Format(OUTPUT_PATH, materialEditor.target.name.Split(' ')[0] + ".shader"), content);
     AssetDatabase.ImportAsset (string.Format(RELATIVE_OUTPUT_PATH, materialEditor.target.name.Split(' ')[0] + ".shader"));
     Shader shader = Shader.Find(string.Format(SHADER_NAME_SYNTAX, materialEditor.target.name));
     materialEditor.SetShader(shader);
 }
All Usage Examples Of UnityEditor.MaterialEditor::SetShader
MaterialEditor