메뉴 만들기 |
커스텀 윈도우 만들기
아래의 소스로 새로운 메뉴를 만들 수 있습니다.
현재 상태로 클릭하면 에러가 뜰 겁니다.
예제1 |
더보기
using UnityEditor;
using UnityEngine;
public class CustomWindow : EditorWindow {
string myString = "Hello World";
bool groupEnabled;
bool myBool = true;
float myFloat = 1.23f;
Color color;
[MenuItem("Custom / Colorizer")]
public static void ShowWindow() // 2
{
EditorWindow.GetWindow(typeof(CustomWindow));
}
// 창에 표시 할 항목을 정의합니다.
void OnGUI() //편집기를 구현합니다.
{
GUILayout.Label("Base Settings", EditorStyles.boldLabel);
myString = EditorGUILayout.TextField("Text Field", myString);
groupEnabled = EditorGUILayout.BeginToggleGroup("Optional Settings", groupEnabled);
myBool = EditorGUILayout.Toggle("Toggle", myBool);
myFloat = EditorGUILayout.Slider("Slider", myFloat, -3, 3);
EditorGUILayout.EndToggleGroup();
GUILayout.Label("선택한 개체에 색상 지정", EditorStyles.boldLabel); // 2
color = EditorGUILayout.ColorField("Color", color); //삼
if (GUILayout.Button("확인")) // 4
{
Colorize();
}
}
// 색상 설정 방법
void Colorize() {
foreach (GameObject obj in Selection.gameObjects) //5
{
Renderer renderer = obj.GetComponent<Renderer>(); //6
if (renderer != null) {
renderer.sharedMaterial.color = color; //7
}
}
}
}
참조 |
반응형