UnityEditor(慢慢记录)
1、正则表达式
link.https://tool.oschina.net/uploads/apidocs/jquery/regexp.html
2、MenuItem:
用MenuItem标识的类会在Unity导航栏中显示,点击后执行该类
例:
[MenuItem("Art/UI/path")]
3、EditorWindow.GetWindow:
创建一个窗口
link.https://docs.unity3d.com/ScriptReference/EditorWindow.GetWindow.html
例:
FindGUID findGuid = (FindGUID)EditorWindow.GetWindow(typeof(FindGUID), true, "查找缺失的引用")
findGuid.Show();
第二个bool参数的区别 =>
ture: 独立的窗口,不能合并到其他的窗户去
false: 可以合并到其他窗口去
4、GUILayout.Button
在面板上生成一个按钮
link.https://docs.unity3d.com/ScriptReference/GUILayout.Button.html
例:
if (GUILayout.Button("点击按钮"))
{
//点击事件
}
GUI.backgroundColor修改按钮颜色
GUI.backgroundColor = Color.red;
if (GUILayout.Button("点击按钮"))
{
}
GUI.backgroundColor = oldColor;
5、Selection.GetFiltered
返回按类型和模式过滤的当前选择
link.https://docs.unity3d.com/ScriptReference/Selection.GetFiltered.html
例:
var gameObjects = Selection.GetFiltered<UnityEngine.Object>(SelectionMode.DeepAssets);
6、AssetDatabase.AssetPathToGUID(path)
获取文件的GUID(不需要选择mate文件,直接选prefab路径就行了)
例:
string objPath = AssetDatabase.GetAssetPath(go);
string objGuid = AssetDatabase.AssetPathToGUID(objPath);