public void OnGUI() { //TPT = EditorGUILayout.ObjectField(TPT, typeof(TexturePaintTarget), true) as TexturePaintTarget; try { TPT = Selection.activeGameObject.GetComponent <TexturePaintTarget>(); }catch {} if (TPT != null) { EditorGUILayout.LabelField("Object Name : " + TPT.gameObject.name); if (GUILayout.Button("Toggle Edit Mode")) { TPT.editing = !TPT.editing; } if (TPT.editing) { TPT.editing = true; TPT.brushSize = EditorGUILayout.Slider("Brush Size : ", TPT.brushSize, 1f, 6f); TPT.brushColor = EditorGUILayout.ColorField("Brush Color : ", TPT.brushColor); TPT.currentBrushShape = (TexturePaintTarget.Shapes)EditorGUILayout.EnumPopup("Current Brush Shape : ", TPT.currentBrushShape); TPT.textureSize = EditorGUILayout.Vector2IntField("Texture Size : ", TPT.textureSize); if (GUILayout.Button("Create new Texture")) { TPT.NewTexture(); } } } }
public void OnSceneGUI() { TexturePaintTarget TPT = (TexturePaintTarget)target; //Debug.Log("Scene Working"); if (TPT.editing) { int controlId = GUIUtility.GetControlID(FocusType.Passive); SceneView sceneView = SceneView.currentDrawingSceneView; TPT.UpdateMousePosition(sceneView); if (TPT.isHovered) { Event e = Event.current; if ((e.type == EventType.MouseDown || e.type == EventType.MouseDrag) && (e.button == 0)) { if (TPT.Layers.Count > 0) { TPT.PaintPixels(TPT.mousePosition, 0); } //e.Use(); GUIUtility.hotControl = controlId; Event.current.Use(); } } } // int controlId = GUIUtility.GetControlID(FocusType.Passive); // GUIUtility.hotControl = controlId; //Gizmos.color = TPT.brushColor; //Gizmos.DrawWireSphere(TPT.mousePosition, TPT.brushSize); }