// Inspector GUI shown in the Editor window. Base class shows z_BrushSettings by default public override void DrawGUI(z_BrushSettings brushSettings) { base.DrawGUI(brushSettings); GUILayout.BeginHorizontal(); if (colorPalette == null) { RefreshAvailablePalettes(); } EditorGUI.BeginChangeCheck(); currentPaletteIndex = EditorGUILayout.Popup(currentPaletteIndex, availablePalettes_str, "popup"); if (EditorGUI.EndChangeCheck()) { if (currentPaletteIndex >= availablePalettes.Length) { SetColorPalette(z_ColorPaletteEditor.AddNew()); } else { SetColorPalette(availablePalettes[currentPaletteIndex]); } } paintMode = (z_PaintMode)GUILayout.Toolbar((int)paintMode, modeIcons, "Command", GUILayout.Width(120)); GUILayout.EndHorizontal(); if (!likelySupportsVertexColors) { EditorGUILayout.HelpBox("It doesn't look like any of the materials on this object support vertex colors!", MessageType.Warning); } colorPaletteEditor.onSelectIndex = (color) => { SetBrushColor(color, brushSettings.strength); }; colorPaletteEditor.onSaveAs = SetColorPalette; mask = z_GUILayout.ColorMaskField("Color Mask", mask); colorPaletteEditor.OnInspectorGUI(); }
// Inspector GUI shown in the Editor window. Base class shows z_BrushSettings by default public override void DrawGUI(z_BrushSettings brushSettings) { base.DrawGUI(brushSettings); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); paintMode = (z_PaintMode)GUILayout.Toolbar((int)paintMode, modeIcons, "Command", null); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.Space(4); if (!likelySupportsTextureBlending) { EditorGUILayout.HelpBox("It doesn't look like any of the materials on this object support texture blending!\n\nSee the readme for information on creating custom texture blend shaders.", MessageType.Warning); } if (meshAttributes != null) { int prevSelectedAttributeIndex = selectedAttributeIndex; selectedAttributeIndex = z_SplatWeightEditor.OnInspectorGUI(selectedAttributeIndex, ref brushColor, meshAttributes); if (prevSelectedAttributeIndex != selectedAttributeIndex) { SetBrushColorWithAttributeIndex(selectedAttributeIndex); } #if POLYBRUSH_DEBUG GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); if (GUILayout.Button("MetaData", EditorStyles.miniButton)) { Debug.Log(meshAttributes.ToString("\n")); string str = z_EditorUtility.FindPolybrushMetaDataForShader(meshAttributesContainer.shader); if (!string.IsNullOrEmpty(str)) { TextAsset asset = AssetDatabase.LoadAssetAtPath <TextAsset>(str); if (asset != null) { EditorGUIUtility.PingObject(asset); } else { Debug.LogWarning("No MetaData found for Shader \"" + meshAttributesContainer.shader.name + "\""); } } else { Debug.LogWarning("No MetaData found for Shader \"" + meshAttributesContainer.shader.name + "\""); } } GUILayout.EndHorizontal(); GUILayout.Space(4); if (GUILayout.Button("rebuild targets")) { RebuildColorTargets(brushColor, brushSettings.strength); } GUILayout.Label(brushColor != null ? brushColor.ToString() : "brush color: null\n"); #endif } }
/// Inspector GUI shown in the Editor window. Base class shows z_BrushSettings by default public override void DrawGUI(z_BrushSettings brushSettings) { base.DrawGUI(brushSettings); GUILayout.Label("Paint Settings", z_GUI.headerTextStyle); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); paintMode = (z_PaintMode) GUILayout.Toolbar( (int) paintMode, modeIcons, "Command", null); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.Space(4); // GUILayout.Label( brushColor.ToString() ); // GUILayout.Label( meshAttributes.ToString("\n")); // GUILayout.Space(4); if(!likelySupportsTextureBlending) EditorGUILayout.HelpBox("It doesn't look like any of the materials on this object support texture blending!\n\nSee the readme for information on creating custom texture blend shaders.", MessageType.Warning); else brushColor = z_SplatWeightEditor.OnInspectorGUI(brushColor, textures); }
/// Inspector GUI shown in the Editor window. Base class shows z_BrushSettings by default public override void DrawGUI(z_BrushSettings brushSettings) { base.DrawGUI(brushSettings); GUILayout.Label("Paint Settings", z_GUI.headerTextStyle); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); paintMode = (z_PaintMode) GUILayout.Toolbar( (int) paintMode, modeIcons, "Command", null); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.Space(4); if(!likelySupportsVertexColors) EditorGUILayout.HelpBox("It doesn't look like any of the materials on this object support vertex colors!", MessageType.Warning); brushColor = EditorGUILayout.ColorField("Brush Color", brushColor); if(colorPalette == null) RefreshAvailablePalettes(); EditorGUI.BeginChangeCheck(); currentPaletteIndex = EditorGUILayout.Popup("Palettes", currentPaletteIndex, availablePalettes_str); if(EditorGUI.EndChangeCheck()) { if(currentPaletteIndex >= availablePalettes.Length) SetColorPalette( z_ColorPaletteEditor.AddNew() ); else SetColorPalette(availablePalettes[currentPaletteIndex]); } Rect r = GUILayoutUtility.GetLastRect(); if(Event.current.type == EventType.MouseDown && r.Contains(Event.current.mousePosition)) EditorGUIUtility.PingObject(colorPalette); colorPaletteEditor.onSelectIndex = (color) => { SetBrushColor(color, brushSettings.strength); }; colorPaletteEditor.onSaveAs = SetColorPalette; GUILayout.BeginVertical( paletteStyle ); colorPaletteEditor.OnInspectorGUI(); GUILayout.EndHorizontal(); }