Unity UI는 사용자 인터페이스를 만들 수 있는 Canvas 기반 시스템
플레이어가 게임과 상호작용할 수 있도록 버튼, 텍스트, 이미지, 슬라이더 등을 배치하는 데 사용

핵심 구조: Canvas System

1.  Canvas

  • 모든 UI 요소의 부모
  • UI는 이 Canvas 안에 자식으로 위치해야 화면에 보여짐
  • 3가지 Render Mode:
    • Screen Space - Overlay (카메라 무시하고 UI를 화면에 고정)
    • Screen Space - Camera (카메라 기준으로 UI 렌더링)
    • World Space (UI를 3D 오브젝트처럼 씀)

1-1.  Canvas Scaler

UI Scale Mode 캔버스에서 UI 요소가 스케일되는 방법을 결정합니다.
Constant Pixel Size UI 요소가 화면 크기에 관계없이 동일한 픽셀 크기로 유지됩니다.
Scale With Screen Size 화면이 커질수록 UI 요소도 커집니다.
Constant Physical Size 화면 크기와 해상도에 관계없이 UI 요소가 동일한 물리적인 크기로 유지됩니다.

 

https://docs.unity3d.com/kr/2022.3/Manual/script-CanvasScaler.html

 

캔버스 스케일러 - Unity 매뉴얼

캔버스 스케일러(Canvas Scaler) 컴포넌트는 캔버스 내 UI 요소의 전체적인 스케일과 픽셀 밀도를 제어하는 데 사용됩니다. 스케일은 글꼴 크기와 이미지 경계 등 캔버스 아래의 모든 요소에 영향을

docs.unity3d.com

 

2.  RectTransform

  • UI 요소의 좌표, 크기, 정렬(anchor) 등을 설정
  • Transform 대신 RectTransform을 씀

3.  EventSystem

  • UI 입력 이벤트(클릭, 드래그 등)를 감지하는 시스템
  • 대부분 자동으로 생성되며, UI가 작동하려면 필수 요소

4.  앵커 (Anchor)

  • UI 요소(RectTransform) 기준에서의 부착 지점
  • 부모 객체(Canvas나 Panel 등) 안에서 어디에 기준을 잡을지를 정하는 것
  • 앵커를 정하면, 화면 크기가 변해도 UI 위치와 크기가 자동으로 조정됨

📌 예시: 버튼의 앵커를 "오른쪽 아래"에 설정하면, 해상도가 바뀌어도 버튼은 항상 오른쪽 아래에 붙어있다.

  • 앵커는 (0,0)~(1,1) 사이 값으로 나타냄
    • (0,0) → 부모 왼쪽 아래
    • (1,1) → 부모 오른쪽 위

5. 피벗 (Pivot)

  • 오브젝트 자체의 중심점
  • 이 중심을 기준으로 회전하거나 스케일 조정이 일어남
  • 피벗은 주로 회전축, 크기 조정 시 중심을 바꿀 때 중요

📌 예시: 피벗을 (0,0)으로 설정하면, 왼쪽 아래 모서리를 기준으로 회전하거나 크기가 변함. 기본은 (0.5, 0.5) — 즉 중앙.

 

정리

항목 설명 주로 쓰는 상황
앵커 (Anchor) 부모 공간 안에서 고정할 위치 UI 위치 유지, 반응형 화면
피벗 (Pivot) 오브젝트 자체의 중심점 회전, 스케일 조정 중심

'Unity' 카테고리의 다른 글

월드좌표, 로컬좌표  (0) 2025.04.24
리소스 데이터 관리(제네릭 T, TryGetValue, TryAdd)  (0) 2025.04.08
SceneManager.GetActiveScene, AddListener  (0) 2025.03.21
플레이어까지 거리(벡터) 구하기  (0) 2025.03.19
[Resource.Load]  (0) 2024.11.13

+ Recent posts