private void OnInspectorGUI_Renderer(ptTilemap tmp) { GUILayout.Label("Renderer:"); EditorGUILayout.Space(); EditorGUI.BeginChangeCheck(); tmp.CellSize = EditorGUILayout.Vector2Field("Cell size:", tmp.CellSize); tmp.ColorTint = EditorGUILayout.ColorField("Color tint:", tmp.ColorTint); tmp.SortingOrder = EditorGUILayout.IntField("Sorting order:", tmp.SortingOrder); tmp.Material = (Material)EditorGUILayout.ObjectField("Material:", tmp.Material, typeof(Material), false); tmp.AutoTrim = EditorGUILayout.Toggle("Auto trim:", tmp.AutoTrim); EditorGUILayout.Space(); if (GUILayout.Button("Clear")) { tmp.Clear(); tmp.UpdateMap(); } if (GUILayout.Button("Refresh mesh")) { tmp.UpdateMap(); } if (EditorGUI.EndChangeCheck()) { EditorUtility.SetDirty(tmp.gameObject); } }
private void Start() { tilemap = GetComponent <ptTilemap>(); tilemap.SetPixel(1, 1, Color.green); tilemap.SetPixel(1, 50, Color.red); tilemap.UpdateMap(); }
private void DrawColorPicker(ptTilemap tmp) { color = EditorGUILayout.ColorField("Paint color:", color); blendMode = (BlendMode)EditorGUILayout.EnumPopup("Blend mode:", blendMode); GUILayout.BeginHorizontal(); GUILayout.Box(colorBox, GUILayout.Width(100), GUILayout.Height(100)); if (Event.current.type == EventType.MouseDrag || Event.current.type == EventType.MouseDown) { if (GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition)) { var pickerRect = GUILayoutUtility.GetLastRect(); var gui = Event.current.mousePosition; Xpicker = Mathf.Abs((pickerRect.x - gui.x) / pickerRect.width); Ypicker = Mathf.Abs((pickerRect.y - gui.y) / pickerRect.height); UpdateColor(); Repaint(); } } GUILayout.BeginVertical(); if (GUILayout.Button(isRGB ? "RGB" : "HSV")) { isRGB = !isRGB; } if (isRGB) { color.r = EditorGUILayout.Slider(color.r, 0f, 1f); color.g = EditorGUILayout.Slider(color.g, 0f, 1f); color.b = EditorGUILayout.Slider(color.b, 0f, 1f); color.a = EditorGUILayout.Slider(color.a, 0f, 1f); } else { var a = color.a; var hsv = color.toHSV(); hsv.h = EditorGUILayout.Slider(hsv.h, 0f, 1f); hsv.s = EditorGUILayout.Slider(hsv.s, 0f, 1f); hsv.v = EditorGUILayout.Slider(hsv.v, 0f, 1f); color = hsv.toRGB(); color.a = a; } alphaLock = EditorGUILayout.Toggle("Alpha lock", alphaLock); if (GUILayout.Button("Clear map to color")) { tmp.Fill(color); tmp.UpdateMap(); } GUILayout.EndVertical(); GUILayout.EndHorizontal(); }