//返回值表示是不是删除了这个触发器 bool DrawTrigger(CameraTrigger t) { Color tmp1 = GUI.color; EditorGUILayoutEx.FadeArea area = EditorGUILayoutEx.instance.BeginFadeArea(t.isExpand, "", t.name + "_cameraTrigger", EditorStyleEx.BoxStyle); // Color tmp2 = GUI.color; //BeginFadeArea 需要 GUI.color = tmp1; //BeginFadeArea 需要 using (new AutoBeginHorizontal()) { t.gameObject.name = EditorGUILayout.TextField(t.gameObject.name, EditorGUILayoutEx.defaultLabelStyle, GUILayout.ExpandWidth(false), GUILayout.ExpandHeight(false)); if (GUILayout.Button("", EditorGUILayoutEx.defaultLabelStyle)) { t.isExpand = !t.isExpand; } if (GUILayout.Button(EditorGUIUtility.IconContent(CameraMgr.instance.m_curCameraInfo == t.m_info ? "preAudioLoopOn" : "preAudioLoopOff"), EditorStyles.toolbarButton, GUILayout.Width(25))) { CameraMgr.instance.Add(t.m_info, false, CameraInfo.Camera_Editor_Priority);//优先级要提高点 return(false); } if (GUILayout.Button(EditorGUIUtility.IconContent("TreeEditor.Trash"), EditorStyles.toolbarButton, GUILayout.Width(25))) { return(true); } } if (area.Show()) { GUI.color = tmp2;//BeginFadeArea 需要 Transform tran = t.transform; EditorGUILayout.ObjectField("触发体", t.GetComponent <BoxCollider>(), typeof(BoxCollider), false); using (new AutoBeginHorizontal()) { EditorGUILayout.PrefixLabel("触发体位置"); tran.position = EditorGUILayout.Vector3Field(GUIContent.none, tran.position, GUILayout.Height(18)); if (GUILayout.Button("同步到跟随者", GUILayout.Width(100))) { tran.position = CameraMgr.instance.GetFollowPos(); } } using (new AutoBeginHorizontal()) { EditorGUILayout.PrefixLabel("触发体大小"); tran.localScale = EditorGUILayout.Vector3Field(GUIContent.none, tran.localScale, GUILayout.Height(18)); } float y = EditorGUILayout.FloatField("触发体旋转", tran.eulerAngles.y); tran.eulerAngles = new Vector3(tran.eulerAngles.x, y, tran.eulerAngles.z); //镜头信息 DrawCameraInfo(t.m_info, t.gameObject.name, false, true); } EditorGUILayoutEx.instance.EndFadeArea(); return(false); }