The Unity Material Editor.
Extend this class to write your own custom material editor. For more detailed information see the Custom Material Editor section of the ShaderLab reference.
| kMiniTextureFieldLabelIndentLevel | Useful for indenting shader properties that need the same indent as mini texture field. |
| customShaderGUI | Returns the custom ShaderGUI implemented by the shader. |
| isVisible | Is the current material expanded. |
| Awake | Called when the Editor is woken up. |
| BeginAnimatedCheck | Creates a Property wrapper, useful for making regular GUI controls work with MaterialProperty. |
| ColorProperty | Draw a property field for a color shader property. |
| DefaultPreviewGUI | Default handling of preview area for materials. |
| DefaultPreviewSettingsGUI | Default toolbar for material preview area. |
| DefaultShaderProperty | Handles UI for one shader property ignoring any custom drawers. |
| DoubleSidedGIField | Display UI for editing a material's Double Sided Global Illumination setting. Returns true if the UI is indeed displayed i.e. the material supports the Double Sided Global Illumination setting. +See Also: Material.doubleSidedGI. |
| EmissionEnabledProperty | This function will draw the UI for controlling whether emission is enabled or not on a material. |
| EnableInstancingField | Display UI for editing material's render queue setting. |
| EndAnimatedCheck | Ends a Property wrapper started with BeginAnimatedCheck. |
| FloatProperty | Draw a property field for a float shader property. |
| GetPropertyHeight | Calculate height needed for the property. |
| GetTexturePropertyCustomArea | Returns the free rect below the label and before the large thumb object field. Is used for e.g. tiling and offset properties. |
| HasPreviewGUI | Can this component be Previewed in its current state? |
| HelpBoxWithButton | Make a help box with a message and button. Returns true, if button was pressed. |
| IntegerProperty | Draw a property field for an integer shader property. |
| IsInstancingEnabled | Determines whether the Enable Instancing checkbox is checked. |
| LightmapEmissionFlagsProperty | Draws the UI for setting the global illumination flag of a material. |
| LightmapEmissionProperty | This function will draw the UI for the lightmap emission property. (None, Realtime, baked)See Also: MaterialLightmapFlags. |
| OnDisable | Called when the editor is disabled, if overridden please call the base OnDisable() to ensure that the material inspector is set up properly. |
| OnEnable | Called when the editor is enabled, if overridden please call the base OnEnable() to ensure that the material inspector is set up properly. |
| OnInspectorGUI | Implement specific MaterialEditor GUI code here. If you want to simply extend the existing editor call the base OnInspectorGUI () before doing any custom GUI code. |
| OnPreviewGUI | Custom preview for Image component. |
| PropertiesChanged | Whenever a material property is changed call this function. This will rebuild the inspector and validate the properties. |
| PropertiesDefaultGUI | Default rendering of shader properties. |
| PropertiesGUI | Render the standard material properties. This method will either render properties using a ShaderGUI instance if found otherwise it uses PropertiesDefaultGUI. |
| RangeProperty | Draw a range slider for a range shader property. |
| RegisterPropertyChangeUndo | Call this when you change a material property. It will add an undo for the action. |
| RenderQueueField | Display UI for editing material's render queue setting. |
| RequiresConstantRepaint | Does this edit require to be repainted constantly in its current state? |
| SetDefaultGUIWidths | Set EditorGUIUtility.fieldWidth and labelWidth to the default values that PropertiesGUI uses. |
| SetShader | Set the shader of the material. |
| ShaderProperty | Handes UI for one shader property. |
| TextureCompatibilityWarning | Checks if particular property has incorrect type of texture specified by the material, displays appropriate warning and suggests the user to automatically fix the problem. |
| TextureProperty | Draw a property field for a texture shader property. |
| TexturePropertyMiniThumbnail | Draw a property field for a texture shader property that only takes up a single line height. |
| TexturePropertySingleLine | Method for showing a texture property control with additional inlined properites. |
| TexturePropertyTwoLines | Method for showing a compact layout of properties. |
| TexturePropertyWithHDRColor | Method for showing a texture property control with a HDR color field and its color brightness float field. |
| TextureScaleOffsetProperty | Draws tiling and offset properties for a texture. |
| VectorProperty | Draw a property field for a vector shader property. |
| OnShaderChanged | A callback that is invoked when a Material's Shader is changed in the Inspector. |
| ApplyMaterialPropertyDrawers | Apply initial MaterialPropertyDrawer values. |
| FixupEmissiveFlag | Returns a properly set global illlumination flag based on the passed in flag and the given color. |
| GetDefaultPropertyHeight | Calculate height needed for the property, ignoring custom drawers. |
| GetFlexibleRectBetweenFieldAndRightEdge | Utility method for GUI layouting ShaderGUI. Used e.g for the rect after a left aligned Color field. |
| GetFlexibleRectBetweenLabelAndField | Utility method for GUI layouting ShaderGUI. |
| GetLeftAlignedFieldRect | Utility method for GUI layouting ShaderGUI. |
| GetMaterialProperties | Get shader property information of the materials you pass in. |
| GetMaterialProperty | Get information about a single shader property. |
| GetMaterialPropertyNames | Gets the shader property names of the materials you pass in. |
| GetRectAfterLabelWidth | Utility method for GUI layouting ShaderGUI. This is the rect after the label which can be used for multiple properties. The input rect can be fetched by calling: EditorGUILayout.GetControlRect. |
| GetRightAlignedFieldRect | Utility method for GUI layouting ShaderGUI. |
| serializedObject | A SerializedObject representing the object or objects being inspected. |
| target | The object being inspected. |
| targets | An array of all the object being inspected. |
| hideFlags | Should the object be hidden, saved with the Scene or modifiable by the user? |
| name | The name of the object. |
| CreateInspectorGUI | Implement this method to make a custom UIElements inspector. |
| DrawDefaultInspector | Draws the built-in Inspector. |
| DrawHeader | Call this function to draw the header of the editor. |
| DrawPreview | The first entry point for Preview Drawing. |
| GetInfoString | Implement this method to show asset information on top of the asset preview. |
| GetPreviewTitle | Override this method if you want to change the label of the Preview area. |
| OnInteractivePreviewGUI | Implement to create your own interactive custom preview. Interactive custom previews are used in the preview area of the inspector and the object selector. |
| OnPreviewSettings | Override this method if you want to show custom controls in the preview header. |
| RenderStaticPreview | Override this method if you want to render a static preview. |
| Repaint | Redraw any inspectors that shows this editor. |
| UseDefaultMargins | Override this method in subclasses to return false if you don't want default margins. |
| GetInstanceID | Gets the instance ID of the object. |
| ToString | Returns the name of the object. |
| ShouldHideOpenButton | Returns the visibility setting of the "open" button in the Inspector. |
| CreateCachedEditor | On return previousEditor is an editor for targetObject or targetObjects. The function either returns if the editor is already tracking the objects, or destroys the previous editor and creates a new one. |
| CreateCachedEditorWithContext | Creates a cached editor using a context object. |
| CreateEditor | Make a custom editor for targetObject or targetObjects. |
| CreateEditorWithContext | Make a custom editor for targetObject or targetObjects with a context object. |
| DrawFoldoutInspector | Draws the inspector GUI with a foldout header for target. |
| Destroy | Removes a GameObject, component or asset. |
| DestroyImmediate | Destroys the object obj immediately. You are strongly recommended to use Destroy instead. |
| DontDestroyOnLoad | Do not destroy the target Object when loading a new Scene. |
| FindAnyObjectByType | Retrieves any active loaded object of Type type. |
| FindFirstObjectByType | Retrieves the first active loaded object of Type type. |
| FindObjectOfType | Returns the first active loaded object of Type type. |
| FindObjectsByType | Retrieves a list of all loaded objects of Type type. |
| FindObjectsOfType | Gets a list of all loaded objects of Type type. |
| Instantiate | Clones the object original and returns the clone. |
| CreateInstance | Creates an instance of a scriptable object. |
| bool | Does the object exist? |
| operator != | Compares if two objects refer to a different object. |
| operator == | Compares two object references to see if they refer to the same object. |
| HasFrameBounds | Validates whether custom bounds can be calculated for this Editor. |
| OnGetFrameBounds | Gets custom bounds for the target of this editor. |
| OnSceneGUI | Enables the Editor to handle an event in the Scene view. |
| OnDestroy | This function is called when the scriptable object will be destroyed. |
| OnValidate | Editor-only function that Unity calls when the script is loaded or a value changes in the Inspector. |
| Reset | Reset to default values. |
| finishedDefaultHeaderGUI | An event raised while drawing the header of the Inspector window, after the default header items have been drawn. |