unity_editor
Unity Editor Extending the Editor
MenuItem("GameObject/Add Aliase %G", priority =20)]
public static void AddAliase() { ... }
Menu - Command - Shortcut
菜单的validate
[MenuItem("GameObject/Add Aliase", validate=true)]
static bool ValidationForAddAliase() { ... }
{
Assets/
CONTEXT/ComponentName
GameObject/
...
}
GameObject的特殊点。
% - CTRL
_ - 单键
LEFT/RIGHT/UP/DOWN - 箭头键
F1 F2 -
HOME, END, PGUP, PGDN -
MenuItem("GameObject/Add Aliase %G")]
一定要是空格precede
static void PrintObjectName(MenuCommand command)
{
Debug.Log(command.context)
}
获取选中的GameObject的方法
多选
Selection.transforms
Selection.GetTransforms()
代码示例:
using UnityEditor;
[CustomEditor(typeof(Camera))]
public class SetLightParameters : Editor {
private Camera camera;
public override void OnInspectorGUI()
{
base.OnInspectorGUI();
camera = (Camera)target;
if (GUILayout.Button("SetLightParameters"))
{
camera.nearClipPlane = 1f;
camera.farClipPlane = 500f;
camera.fieldOfView = 40;
EditorUtility.SetDirty(target);
}
}
}