예제 #1
0
    public override void OnInspectorGUI()
    {
        Rect previewRect = EditorGUILayout.GetControlRect(new GUILayoutOption[] { GUILayout.Height(Camera.main.pixelRect.height * EditorGUIUtility.currentViewWidth / Camera.main.pixelRect.width) });

        focuser.attachedTo = (Transform)EditorGUILayout.ObjectField("Attached To", focuser.attachedTo, typeof(Transform), true);
        EditorUtility.SetDirty(focuser);
        Undo.RecordObject(focuser, "Set AttachedTo");
        focuser.zoom        = EditorGUILayout.FloatField("Zoom", focuser.zoom);
        focuser.playerFocus = EditorGUILayout.Slider("Player Focus", focuser.playerFocus, 0, 1);
        focuser.snappiness  = EditorGUILayout.Slider("Snappiness", focuser.snappiness, 0, 1);

        previewCam.transform.position = focuser.CalculateResultingPosition(previewPlayer.transform.position);
        previewCam.orthographicSize   = focuser.zoom;

        Handles.DrawCamera(previewRect, previewCam);
        EditorGUIUtility.AddCursorRect(previewRect, MouseCursor.Pan);

        Undo.RecordObject(focuser, "Modified Focuser settings");

        float m = 5;

        previewPlayer.transform.position = new Vector3(startPos.x + Mathf.Sin(Time.realtimeSinceStartup) * 5, startPos.y + Mathf.Cos(Time.realtimeSinceStartup) * 5, startPos.z);

        //Handles.ArrowHandleCap(0, previewCam.transform.position, previewCam.transform.rotation, 3, EventType.Repaint);

        //EditorGUIUtility.GUIToScreenPoint
        //EditorGUIUtility.GetFlowLayoutedRects
        //EditorGUIUtility.PingObject
        //EditorGUIUtility.ShowObjectPicker

        // update the preview whenever variable in RowMaker is changed
        //rowMaker.Preview();
    }