编辑器是开发工作中一个常用的功能,策划有时候会实时调整游戏数据或者创建关卡之类,就需要程序人员为其创建一个可编辑的编辑器。
U3D中为我们提供了可开发的面板,主要使用的是Editor模式下的OnGUI功能。测试代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//编辑器必须用到的引用
using UnityEditor;
/// <summary>
/// 地图编辑器
/// </summary>
public class Dundjinni :
//创建编辑器需要继承EditorWindow
EditorWindow
{
//创建一个新的编辑器
[MenuItem("Tools/DundjinniCreator")]
static void Creat()
{
EditorWindow.GetWindow(typeof(Dundjinni));
}
private string tileName;//输入框
private int polySize;//进度条
void OnGUI()
{
//创建测试窗口标题
GUILayout.Label("测试创建窗口标题", EditorStyles.boldLabel);
//创建输入框
tileName = EditorGUILayout.TextField("输入框", " 请输入你要写的文字 ");
//创建进度条
polySize = EditorGUILayout.IntSlider(" 进度条 ", polySize, 1, 100);
//创建按钮
if (GUILayout.Button("测试点击按钮"))
{
TestClick();
}
}
/// <summary>
/// 测试点击
/// </summary>
private void TestClick()
{
Debug.Log("点击了按钮");
}
}
测试结果如下: