引用一下Editor的命名空间UnityEditor,我们需要在Scene场景中绘制一个UI,需要使用OnSceneUI的方法 private void OnSceneGUI() { Handles.BeginGUI();//开始绘制GUI GUILayout.BeginArea(new Rect(0, 0, 150, 200));//绘制GUI的显示区域 GUILayout.Label("选择颜色");//添加文字提示 if (GUILayout.Button("黄...
[CustomEditor(typeof(PlayerController))]publicclassPlayerEditor:Editor{publicoverridevoidOnInspectorGUI(){base.OnInspectorGUI();if(Application.isPlaying){PlayerControllertar=targetasPlayerController;if(GUILayout.Button("开始调试")){tar.TestFunc();}}} 文本:Label、TextArea、TextField 这三者都是文本类型,...
五、控件属性(GUILayoutOption) 结语 Reference: 前言 总目录传送:李恒:Unity Editor 编辑器扩展功能详解(1) 目录索引 下一章节: Unity Editor 编辑器扩展功能详解(3) EditorGUI/EditorGUILayout(上) GUI/GUILayout 主要是用于Game视图的基本UI信息显示与逻辑操作,例如 假设这是一个全局时间控制面板 这在某些插件/...
class in UnityEditor 描述 这些方法的运行方式与常规 GUI 函数十分相似,并且在EditorGUILayout中也有匹配实现。 静态变量 actionKey是否按住了平台相关的“action”修改键?(只读) indentLevel字段标签的缩进级别。 showMixedValue使后续控件呈现出编辑多个不同值的外观。
class in UnityEditor 描述 EditorGUI的自动布局版本。 静态函数 BeginFadeGroup开始一个可隐藏/显示的组,并且过渡将生成动画。 BeginHorizontal开始一个水平组并找回其矩形。 BeginScrollView开始一个自动布局的滚动视图。 BeginToggleGroup开始一个垂直组,带有可一次性启用或禁用所有控件的开关。
EditorGUI.PropertyField(rect, element); } } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38.
EditorGUI 类 专门用于编辑器界面的GUI类,提供了Unity内置类或结构体的控件函数,比如Color类、Vector3类等定义的控件。● 为编辑器在Inspector和EditorWindow中扩展提供了很大的方便。3. 功能 3.1 折叠菜单: Foldout ● Foldout :创建一个左侧带有折叠箭头的标签。bool 用户选择的折叠状态。如果为 true,则应...
if (GUILayout.Button("查找法线贴图")) { //参数释义 //1. 查找对象的引用 //2. 是否允许查找场景对象 //3. 查找对象名称过滤(比如这里的normal是指文件名称中有normal的会被搜索到) //4. controlID, 默认写0 EditorGUIUtility.ShowObjectPicker<Texture>(tex, false, "normal", 0); } 1234567891011 ...
1. 前言 EditorGUI类 专门用于编辑器界面的GUI类,提供了Unity内置类或结构体的控件函数,比如Color类、Vector3类等定义的控件。 为编辑器在Inspector和EditorWindow中扩展提供了很大的方便。 2. 参数 静态函数描述 BeginChangeCheck启动一个新代码...
void OnGUI() { if (textStyle == null) { textStyle = new GUIStyle("HeaderLabel"); textStyle.fontSize = 20; } GUILayout.BeginHorizontal("HelpBox"); GUILayout.Label("点击示例,可以将其名字复制下来", textStyle); GUILayout.FlexibleSpace(); GUILayout.Label("Search:"); search = EditorGUILay...