Unity UI 툴킷 가이드
개요
Unity UI 툴킷은 강력한 사용자 인터페이스(UI)를 생성할 수 있는 기능을 제공합니다. 이 가이드는 UI 툴킷의 기본 요소 및 사용 가능한 빌트인 컨트롤을 설명합니다. 이를 통해 개발자는 UI를 보다 손쉽게 설계하고 구현할 수 있습니다.
UXML 요소 참고
UXML은 Unity의 UI 요소를 정의하는 XML 형식입니다. 다음은 몇 가지 기본 UI 요소에 대한 설명입니다.
기본 요소 | 네임스페이스 | 허용되는 자식 요소 | C# 클래스 |
---|---|---|---|
BindableElement | UnityEngine.UIElements | 원하는 VisualElement 개수 | UnityEngine.UIElements.BindableElement |
VisualElement | UnityEngine.UIElements | 원하는 VisualElement 개수 | UnityEngine.UIElements.VisualElement |
UI 툴킷 빌트인 컨트롤
UI 툴킷에서 사용 가능한 모든 빌트인 컨트롤의 목록은 다음과 같습니다.
Element | 바인드 가능 데이터 타입 | 네임스페이스 | 허용되는 자식 요소 | C# 클래스 |
---|---|---|---|---|
BoundsField | 지원 | UnityEngine.Bounds | 원하는 VisualElement 개수 | UnityEngine.UIElements.BoundsField |
Button | 지원 | string | None | UnityEngine.UIElements.Button |
ColorField | 지원 | UnityEngine.Color | 원하는 VisualElement 개수 | UnityEditor.UIElements.ColorField |
DropdownField | 지원 | string | 원하는 VisualElement 개수 | UnityEngine.UIElements.DropdownField |
TextField | 지원 | string | 원하는 VisualElement 개수 | UnityEngine.UIElements.TextField |
UI 요소 활용 예제
1. 버튼 생성 예제
다음은 UIButton을 생성하고 클릭 시 이벤트를 처리하는 간단한 예제입니다.
using UnityEngine;
using UnityEngine.UIElements;
public class ButtonExample : MonoBehaviour
{
private void Start()
{
var uiDocument = GetComponent<UIDocument>();
var button = uiDocument.rootVisualElement.Q<Button>("MyButton");
button.RegisterCallback<ClickEvent>(ev => {
Debug.Log("버튼이 클릭되었습니다!");
});
}
}
2. 텍스트 필드 사용 예제
아래 코드는 텍스트 필드를 만들고 사용자 입력을 출력하는 예제입니다.
using UnityEngine;
using UnityEngine.UIElements;
public class TextFieldExample : MonoBehaviour
{
private void Start()
{
var uiDocument = GetComponent<UIDocument>();
var textField = uiDocument.rootVisualElement.Q<TextField>("MyTextField");
textField.RegisterValueChangedCallback(evt =>
{
Debug.Log("현재 입력: " + evt.newValue);
});
}
}
3. 드롭다운 활용 예제
드롭다운 메뉴를 사용하여 선택된 옵션에 따라 다른 작업을 수행하는 예제입니다.
using UnityEngine;
using UnityEngine.UIElements;
public class DropdownExample : MonoBehaviour
{
private void Start()
{
var uiDocument = GetComponent<UIDocument>();
var dropdown = uiDocument.rootVisualElement.Q<DropdownField>("MyDropdown");
dropdown.RegisterValueChangedCallback(evt =>
{
Debug.Log("선택된 옵션: " + evt.newValue);
});
}
}
결론
Unity의 UI 툴킷을 활용하면 다양한 사용자 인터페이스를 효과적으로 구성할 수 있습니다. 제공된 예제를 통해 UI 요소의 기본 사용법을 익히고, 더 나아가 자신의 프로젝트에 적합한 UI를 구축해보세요.