1. Game Features
- C# Script
- Engine
- Physics
- 충돌체(RigidBody)
- Ray
- Simulation
- AddForce
- UI
- Effect
- Sound
- Tool
- Animation
- Input
- Visual
- State
- Data
2. UGUI(Unity GUI)
CUI : 텍스트 형식의 UI
ex) 텍스트 게임에서 주로 사용하는 형식
GUI : 그래픽 형식의 UI, 다양한 활동이 가능하다.
Unity UI : Unity User Interface
- 엔진 차원에서 지원
- 게임 및 애플리케이션용 사용자 인터페이스를 개발하기 위한 UI 툴킷
- 구성 요소와 게임 보기를 사용하여 사용자 인터패이스를 정렬, 위치지정 및 스타일 지정하는 GameObject 기반 UI 시스템
- Unity 편집기에서 사용자 인터페이스를 생성하거나 변경할 수 있다.
Canvas
- Draw order of elements
- Canvas의 UI 요소는 계층 구조에 나타나는 것과 동일한 순서로 그려짐
- 첫 번째 자식이 먼저 그려지고 두 번째 자식이 다음에 그려짐
- 두 개의 UI 요소가 겹치면 이전 요소 위에 나중에 표시되는 요소가 표시
- 다른 요소 위에 표시되는 요소를 변경하려면 계층 구조에서 요소를 끌어서 순서를 변경
- Transform 구성 요소에서 SetAsFirstSibling, SetAsLastSibling, SetSiblingIndex 메서드를 사용해 스크립팅에서 순서를 제어할 수도 있다.
Canvas - Render Modes

Basic Layout

- pivot (중심축)

레이아웃은 해당 피봇을 중심으로 회전을 하게 된다. 즉 UI의 중심축 위치를 조절할 수 있다.
- Anchors (기준점)

UI 오브젝트의 위치를 나타내는 특정한 기준점 모든 UI는 기준점을 기준으로 위치하게 된다.
다양한 해상도에 대응하기 위해서 기준점을 사용하게 된다.
총 9 가지의 기준점을 가진다.
- 상단(좌측, 중간, 우측)
- 중단(좌측, 중간, 우측)
- 하단(좌측, 중간, 우측)
기준점은 분리도 가능하다

그러나 이미지가 깨지는 현상이 발생할 수 있다.

이런 경우에는 상하는 상관없이 좌우 비율에 따라 달라지도록 할 수 있다.
- Anchor presets : 유니티에서 제공하는 기준점의 프리셋

Visual Components
-
Text

-
Image

Interaction Components

Rich Text - Web 제작과 Md(Mark down)의 형태와 유사

색은 헥사 코드도 넣을 수 있다.
Sprite Atlas

유니티는 하나의 스프라이트 당 그려달라는 요청을 해야한다. 이에 한 프레임에 요청이 많이 생길 수 있다. 이는 비효율적이라고 할 수 있다.
Atlas를 통해 딱 1번에 찍힐 수 있도록 한다.