Legacy Documentation: Version 2018.1 (Go to current version)
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



public method Apply(prop: MaterialProperty): void;
public void Apply(MaterialProperty prop);


propThe MaterialProperty to apply values for.


Apply extra initial values to the material.

This function is called in all property drawers when a new material is created, or a shader is changed on an existing material. This lets the property drawers apply any extra values to the materials, for example to setup shader keywords.

Note that if you change a property by assigning a value to it, Apply() is not called automatically. If you have any extra setup you need it to do, you should call it yourself.

Did you find this page useful? Please give it a rating: