1.添加自定义菜单栏方法
using UnityEngine;
using UnityEditor;
public class EditorTools : EditorWindow
{
[MenuItem("EditorTools/自定义的编辑器方法")]
public static void CustomEditroFunction()
{
Debug.Log("Here is your code...");
}
}
2.添加Project自定义菜单栏方法
using UnityEngine;
using UnityEditor;
public class ProjectEditorTools : EditorWindow
{
[MenuItem("Assets/自定义的编辑器方法", priority = 0)]
public static void CustomEditroFunction()
{
Debug.Log("Here is your code...");
}
}
3.添加Hierarchy自定义菜单栏方法
using UnityEngine;
using UnityEditor;
public class HierarchyEditorTools : EditorWindow
{
[MenuItem("GameObject/自定义的编辑器方法", priority = 0)]
public static void CustomEditorFunction()
{
Debug.Log("Here is your code...");
}
}
4.添加Inspector中脚本自定义方法
using UnityEngine;
using UnityEngine.UI;
using UnityEditor;
[CustomEditor(typeof(Text), true)]
public class TextEditor : Editor
{
public override void OnInspectorGUI()
{
DrawDefaultInspector();
CustomTextFunction();
}
private void CustomTextFunction()
{
if (GUILayout.Button("清空内容"))
{
Text text = (Text)target;
text.text = string.Empty;
}
}
}
5.添加自定义窗口方法
using UnityEngine;
using UnityEditor;
public class CustomEditorWindow :EditorWindow
{
[MenuItem("EditorTools/CustomEditorWindow")]
public static void ShowCustomEditorWindow()
{
EditorWindow.GetWindowWithRect<CustomEditorWindow>(new Rect(0, 0, 300, 150), false, "CustomEditorWindow");
}
private void OnGUI()
{
}
}
https://docs.unity3d.com/cn/2022.2/ScriptReference/EditorWindow.html
6.EditorUtility的常用方法
EditorUtility.OpenFilePanel:显示“打开文件”对话框并返回所选的路径名称。
EditorUtility.OpenFolderPanel:显示“打开文件夹”对话框并返回所选的路径名称。
EditorUtility.RevealInFinder:打开指定目录文件夹
EditorUtility类文档连接:https://docs.unity3d.com/cn/2022.2/ScriptReference/EditorUtility.html