Unity 사용자 매뉴얼 (2022.3 LTS)
사용자 인터페이스(UI) 생성
Unity에서 사용자 인터페이스를 생성하기 위한 다양한 방법과 툴킷에 대해 설명합니다. 특히 UI 툴킷과 UXML 요소 사용에 중점을 둡니다.
UI 툴킷
UI 툴킷은 고급 UI를 생성하는 강력한 프레임워크입니다. UXML 및 USS를 사용하여 UI 요소를 정의하고 스타일링할 수 있습니다.
UXML 요소
UXML은 UI 요소를 정의하는 XML 기반 언어입니다. 여기에서 몇 가지 유용한 요소를 소개합니다.
UXML 요소: Label
- 설명: 텍스트를 표시하는 기본 요소입니다.
- C# 클래스:
Label
- 네임스페이스:
UnityEngine.UIElements
속성
속성명 | 타입 | 설명 |
---|---|---|
binding-path | string | 바인드될 타겟 프로퍼티의 경로입니다. |
display-tooltip-when-elided | boolean | true일 경우 툴팁에 생략된 텍스트의 전체 버전이 표시됩니다. |
enable-rich-text | boolean | false일 경우 리치 텍스트 태그가 파싱되지 않습니다. |
focusable | boolean | 요소에 포커스를 맞출 수 있는 경우 true입니다. |
tabindex | int | 포커스 링에서 포커스를 맞출 수 있는 항목을 정렬하는 데 사용되는 정수입니다. |
text | string | 표시되는 텍스트입니다. |
UXML 요소: IntegerField
- 설명: 정수 값을 입력하거나 표시하는 요소입니다.
UXML 요소: LayerField
- 설명: 레이어 선택을 위한 요소입니다.
C# 클래스 및 관련 USS 선택자
UXML 요소에 대해 사용 가능한 C# 프로퍼티와 연결된 USS 선택자를 정리한 표입니다.
C# 프로퍼티 | USS 선택자 | 설명 |
---|---|---|
ussClassName.unity-label | .unity-label | 타입 요소의 USS 클래스명입니다. |
ussClassName.unity-text-element | .unity-text-element | 타입 요소의 USS 클래스명입니다. |
disabledUssClassName.unity-disabled | .unity-disabled | 비활성화된 로컬 요소의 USS 클래스명입니다. |
활용 및 응용 예제
- Label 사용 예제
csharp var label = new Label("안녕하세요, Unity!"); label.tooltip = "이곳은 툴팁입니다.";
- IntegerField 사용 예제
csharp var integerField = new IntegerField("숫자 입력: "); integerField.value = 10;
- LayerField 사용 예제
csharp var layerField = new LayerField("레이어 선택");
이 가이드를 통해 Unity에서 UI 요소를 생성하고 사용할 수 있는 기초를 제공하였습니다. 각 요소에 대한 이해를 높이면 더욱 풍부한 사용자 경험을 제공할 수 있습니다.