Unity 사용자 매뉴얼 - UI 툴킷을 사용하여 UI 구성하기
개요
Unity는 UI 툴킷을 통해 UI를 효율적으로 구성하고 제어할 수 있는 다양한 기능을 제공합니다. 이 문서에서는 C# 스크립트를 활용하여 UI를 구성하는 방법과 여러 기능을 설명하겠습니다.
1. C# 스크립트로 UI 구성하기
기술 사용자는 C# 스크립트를 통해 UI의 레이아웃을 직접 정의할 수 있습니다. 이를 통해 컨트롤의 모양과 스타일을 수정할 수 있으며, 사용자 인터페이스의 다양한 요소와 상호작용할 수 있습니다.
1.1 시각적 트리에 컨트롤 추가하기
UI에서 컨트롤을 사용하려면 시각적 트리에 컨트롤을 추가해야 합니다. 아래는 버튼을 추가하는 예제입니다.
var newButton = new Button("Click me!");
rootVisualElement.Add(newButton);
1.2 컨트롤 값 변경하기
컨트롤의 값을 변경하려면 value
프로퍼티를 사용해야 합니다. 아래의 예제를 통해 플로팅 값의 토글을 확인할 수 있습니다.
m_MyToggle = new Toggle("Test Toggle") { name = "My Toggle" };
rootVisualElement.Add(m_MyToggle);
Button button01 = new Button() { text = "Toggle" };
button01.clicked += () =>
{
m_MyToggle.value = !m_MyToggle.value;
};
rootVisualElement.Add(button01);
2. 콜백 등록하기
값이 변경될 때 이벤트를 전송하는 컨트롤에 콜백을 등록할 수 있습니다. 아래와 같은 방식으로 토글 컨트롤의 값을 변경할 수 있습니다.
m_MyToggle = new Toggle("Test Toggle") { name = "My Toggle" };
m_MyToggle.RegisterValueChangedCallback((evt) => { Debug.Log("Change Event received"); });
rootVisualElement.Add(m_MyToggle);
3. 데이터 바인딩 적용하기
컨트롤은 객체의 속성과 바인딩하여 실시간으로 값을 동기화할 수 있습니다. 예를 들어, 플로트 값을 MonoBehaviour의 public 변수에 바인딩할 수 있습니다.
4. 컨트롤 상태 관리하기
UI 컨트롤에는 다양한 상태가 있으며, 이를 통해 활성화 또는 비활성화할 수 있습니다. 아래는 토글을 비활성화하는 예제입니다.
Toggle myToggle = new Toggle("A Toggle");
Button button01 = new Button();
button01.text = "Button01";
button01.RegisterCallback<ClickEvent>(evt =>
{
myToggle.SetEnabled(false);
});
5. 추가 리소스
이 문서는 Unity UI 툴킷을 효과적으로 활용하기 위한 기초적인 예제를 포함하고 있습니다. 더 궁금한 사항이 있다면 Unity 공식 문서를 참조하시기 바랍니다.