Version: 2020.2
언어: 한국어
Unity의 UI 시스템 비교
UI 툴킷 패키지

UI 툴킷

Unity의 UI 툴킷은 사용자 인터페이스(UI) 개발을 위한 기능, 리소스 및 툴 컬렉션입니다. UI 툴킷을 사용하면 Unity 에디터용 커스텀 UI 및 확장 기능, 런타임 디버깅 툴, 그리고 게임 및 애플리케이션용 런타임 UI를 개발할 수 있습니다.

UI 툴킷은 표준 웹 기술에 기반하고 그로부터 영감을 받았습니다. 웹 페이지나 애플리케이션을 개발한 경험이 있다면 대부분의 지식을 그대로 활용할 수 있으며, 많은 주요 개념이 익숙할 것입니다.

참고:
Unity는 일부 신규 UI 개발 프로젝트에 UI 툴킷을 사용할 것을 권장하지만, Unity UI(uGUI) 및 IMGUI에 있는 일부 기능이 아직 제공되지 않습니다. 이러한 예전 시스템은 특정 사용 사례에 더 적합하며, 레거시 프로젝트를 지원하는 데 필요합니다. UI 툴킷 대신 예전 시스템을 선택하는 것이 더 적합한 경우에 대한 자세한 내용은 Unity의 UI 시스템 비교를 참조하십시오.

UI 툴킷 개요

이 섹션에서는 다음과 같은 주요 UI 툴킷 기능, 리소스 및 툴에 대한 간략한 설명을 제공합니다.

  • 사용자 인터페이스를 만드는 데 필요한 핵심 기능이 들어 있는 UI 시스템 표준 웹 포맷에서 영감을 받은 UI 에셋 에셋 타입. UI를 구성하고 스타일을 지정하는 데 사용됩니다.
  • 인터페이스를 생성 및 디버깅하고 UI 툴킷 사용법을 배우기 위한 툴 및 리소스.

UI 시스템

UI 툴킷의 핵심은 인정받은 웹 기술에 기반한 보류 모드 UI 시스템입니다. 스타일시트, 동적 및 컨텍스트 이벤트 처리를 지원합니다.

UI 시스템에는 다음 기능이 포함됩니다.

  • 시각적 트리: UI 툴킷으로 빌드하는 모든 사용자 인터페이스를 정의합니다. 시각적 트리는 오브젝트 그래프이며, 창 또는 패널의 모든 요소를 ​​포함하는 경량 노드로 구성되어 있습니다.
  • 컨트롤: 버튼, 팝업, 리스트 뷰, 컬러 피커 등을 포함한 표준 UI 컨트롤 라이브러리입니다. 있는 그대로 사용하거나, 커스터마이즈하거나, 자체 컨트롤을 만들 수 있습니다.
  • 데이터 바인딩 시스템: 값을 수정하는 컨트롤에 프로퍼티를 연결합니다.
  • 레이아웃 엔진: CSS Flexbox 모델에 기반한 레이아웃 시스템입니다. 레이아웃 및 스타일 지정 프로퍼티에 따라 요소를 배치합니다.
  • 이벤트 시스템: 사용자 상호작용을 요소에 전달합니다. 입력, 터치 및 포인터 상호작용, 드래그 앤 드롭 작업, 기타 이벤트 유형을 예로 들 수 있습니다. 시스템에는 디스패처, 핸들러, 신디사이저, 이벤트 타입 라이브러리가 포함되어 있습니다.
  • UI 렌더러: Unity의 그래픽스 기기 레이어를 기반으로 직접 빌드된 렌더링 시스템입니다.
  • UI 툴킷 런타임 지원(UI 툴킷 패키지 사용): 런타임 UI를 생성하는 데 필요한 컴포넌트가 들어 있습니다. UI 툴킷 패키지는 현재 프리뷰 단계입니다.

UI 에셋

UI 툴킷은 웹 애플리케이션을 개발하는 방법과 유사한 방식으로 사용자 인터페이스를 빌드하는 데 사용할 수 있는 다음의 에셋 타입을 제공합니다.

  • UXML 문서: Unity UXML(eXtensible Markup Language)은 사용자 인터페이스와 재사용 가능 UI 템플릿의 구조를 정의하는 데 사용하는 HTML 및 XML 기반 마크업 언어입니다. C# 파일에서 인터페이스를 직접 빌드할 수도 있지만, Unity는 대부분의 경우 UXML 문서를 사용할 것을 권장합니다.
  • Unity 스타일시트(USS): 스타일시트를 사용하면 시각적 스타일과 동작을 사용자 인터페이스에 적용할 수 있습니다. 웹에서 사용되는 캐스케이딩 스타일시트(CSS)와 유사하며, 표준 CSS 프로퍼티의 하위 집합을 지원합니다. C# 파일에서 스타일을 직접 적용할 수도 있지만, Unity는 대부분의 경우 USS 파일을 사용할 것을 권장합니다.

UI 툴 및 리소스

UI 툴킷에는 UI 생성에 도움이 되는 다음의 툴과 리소스도 포함되어 있습니다.

  • UI 디버거: UI 디버거(메뉴: Window > UI Toolkit > Debugger)는 웹 브라우저의 디버깅 뷰와 유사한 진단 툴입니다. 이를 통해 요소의 계층 구조를 살펴보고 기본 UXML 구조 및 USS 스타일에 대한 정보를 얻을 수 있습니다.
  • UI 빌더(패키지): UI 빌더를 사용하면 UXML 및 USS 파일과 같은 UI 툴킷 에셋을 시각적으로 생성하고 편집할 수 있습니다. UI 빌더 패키지는 현재 프리뷰 단계입니다. Unity 에디터의 패키지 관리자 창(메뉴: Window > Package Manager)에서 설치할 수 있습니다.
  • UI 샘플: UI 툴킷에는 에디터에서 볼 수 있는 UI 컨트롤용 코드 샘플 라이브러리(메뉴: Window > UI Toolkit > Samples)가 포함되어 있습니다.

  • 2019–02–22 페이지 수정됨
  • 2020–02–19 페이지 수정됨
  • 2020–06–03 페이지 수정됨
Unity의 UI 시스템 비교
UI 툴킷 패키지