public void ShaderPropertiesGUI(Material material, MaterialProperty[] props) { EditorGUIUtility.labelWidth = 0f; //------------------------------------------------------------------------------------------ EditorGUI.BeginChangeCheck(); { //------------------------------------------------------------------------------------------ GUILayout.Label(Styles.RenderingSettingsText, EditorStyles.boldLabel); DoRenderSettingArea(material); //------------------------------------------------------------------------------------------ EditorGUILayout.Separator(); IsStencilSettings = EditorGUILayout.BeginToggleGroup(Styles.StencilSettingsText, IsStencilSettings); if (IsStencilSettings) { stencilMode.floatValue = 1; SetupStencil(); DoStencilArea(material); } else { stencilMode.floatValue = 0; SetupStencil(); } EditorGUILayout.EndToggleGroup(); //------------------------------------------------------------------------------------------ EditorGUILayout.Separator(); GUILayout.Label(Styles.MainColorSettingsText, EditorStyles.boldLabel); DoBaseColorArea(material); //------------------------------------------------------------------------------------------ EditorGUILayout.Separator(); IsHilightSettings = EditorGUILayout.BeginToggleGroup(Styles.HilightSettingsText, IsHilightSettings); if (IsHilightSettings) { hilightMode.floatValue = 1; FindPropertiesHilight(props); DoHilightArea(material); GUILayout.Space(8); } else { hilightMode.floatValue = 0; } keyModes.hilightMode = hilightMode.floatValue; EditorGUILayout.EndToggleGroup(); //------------------------------------------------------------------------------------------ if (IsOutlineSettings) { GUILayout.Label(Styles.EdgeSettingsText, EditorStyles.boldLabel); DoEdgeArea(material); } } //------------------------------------------------------------------------------------------ if (EditorGUI.EndChangeCheck()) { foreach (var obj in blendMode.targets) { MaterialChanged((Material)obj, keyModes); } } material.renderQueue = rq; }