Unity 사용자 매뉴얼 2022.3 (LTS)
사용자 인터페이스(UI) 생성
UI 툴킷
UI 툴킷은 Unity에서 사용자 인터페이스를 만들고 관리하는 데 도움을 주는 강력한 도구입니다. 이 도구를 사용하면 더 나은 사용자 경험을 제공하는 다양한 UI 요소를 만들 수 있습니다.
UXML 요소 레퍼런스
UXML은 Unity의 XML 기반 사용자 인터페이스 언어로, UI 요소의 구조를 정의하는 데 사용됩니다. 이 문서에서는 UXML 요소 중 Vector2Field
, UnsignedLongField
, Vector2IntField
에 대한 설명을 제공합니다.
1. UXML 요소: Vector2Field
C# 클래스: Vector2Field
네임스페이스: UnityEngine.UIElements
기본 클래스: BaseCompositeField_3
이 요소는 2D 벡터 값을 입력받기 위한 필드입니다.
주요 속성
이름 | 타입 | 설명 |
---|---|---|
binding-path | string | 바인드될 타겟 프로퍼티의 경로입니다. |
focusable | boolean | 요소에 포커스를 맞출 수 있으면 true입니다. |
label | string | 필드 옆에 표시될 레이블을 나타내는 문자열입니다. |
tabindex | int | 포커스 링에서 포커스를 맞출 수 있는 항목을 정렬하는 데 사용됩니다. |
content-container | string | 자식 요소를 추가하며, 일반적으로 요소 자체와 동일합니다. |
name | string | VisualElement의 이름입니다. |
tooltip | string | 사용자가 마우스를 요소 위에 놓았을 때 표시할 텍스트입니다. |
2. UXML 요소: UnsignedLongField
이 요소는 부호 없는 정수 값을 입력받기 위한 필드입니다. 이 필드는 데이터가 항상 양수임을 보장해야 할 경우 유용하게 사용됩니다.
3. UXML 요소: Vector2IntField
이 요소는 정수형 2D 벡터 값을 입력받기 위한 필드입니다. 위치나 방향을 정수 값으로 표현할 수 있습니다.
C# 프로퍼티와 USS 선택자 표
아래 표는 C#
공용 프로퍼티 이름과 관련된 USS
선택자의 리스트입니다.
C# 프로퍼티 | USS 선택자 | 설명 |
---|---|---|
ussClassName | .unity-vector2-field | 이 타입 요소의 USS 클래스명입니다. |
.label | .unity-vector2-field__label | 이 타입 요소에 있는 레이블의 USS 클래스명입니다. |
.input | .unity-vector2-field__input | 이 타입 요소에 있는 입력 요소의 USS 클래스명입니다. |
ussClassName | .unity-composite-field | 이 타입 요소의 USS 클래스명입니다. |
.spacer | .unity-composite-field__field-spacer | 이 타입 요소에 있는 스페이서의 USS 클래스명입니다. |
.multilineVariant | .unity-composite-field--multi-line | 필드가 여러 줄로 표시되는 경우의 USS 클래스명입니다. |
.fieldGroup | .unity-composite-field__field-group | 이 타입 요소에 있는 필드 그룹의 USS 클래스명입니다. |
.disabled | .unity-disabled | 비활성화된 로컬 요소의 USS 클래스명입니다. |
추가 활용 예제
- Vector2Field 사용 예제
csharp var vector2Field = new Vector2Field("Position"); vector2Field.bindingPath = "position";
이 코드 예제는 "Position"이라는 레이블을 가진Vector2Field
요소를 생성하고, 해당 필드를 "position" 프로퍼티와 바인딩합니다. - UnsignedLongField 사용 예제
csharp var unsignedLongField = new UnsignedLongField("Score"); unsignedLongField.bindingPath = "score";
이 코드 예제는 "Score"라는 레이블을 가진UnsignedLongField
요소를 생성하고, 해당 필드를 "score" 프로퍼티와 바인딩합니다. - Vector2IntField 사용 예제
csharp var vector2IntField = new Vector2IntField("Grid Position"); vector2IntField.bindingPath = "gridPosition";
이 코드 예제는 "Grid Position"이라는 레이블을 가진Vector2IntField
요소를 생성하고, 해당 필드를 "gridPosition" 프로퍼티와 바인딩합니다.
이 문서를 통해 Unity의 UI 툴킷과 관련된 UXML 요소를 보다 쉽게 이해하고 활용할 수 있기를 바랍니다.