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();
                }
            }
        }
    }
示例#2
0
    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);
    }