[Unity/UI] Rect Transform, Pivot, Anchor 이해하고, 화면 크기에 완벽하게 대응하기

지즈·2025년 3월 6일
0

Unity

목록 보기
14/17

Rect Transform이란?

Rect Transform 이란 유니티 UI 시스템에서 사용되는 Trasnform 컴포넌트의 확장된 버전입니다. 기존 Transform 과 달리 UI 요소의 위치, 크기, 앵커, 피벗 등을 조정할 수 있습니다. 이는 Canvas 내에서 UI 요소를 배치하고 조정하는 데 필수적인 역할을 합니다.

Pivot

UI 요소의 중심으로, 위치 및 회전의 기준이 되는 점입니다.

0 ~ 1 사이의 값을 가집니다.
기본 값인 (0.5, 0.5)는 UI 요소의 중심이 기준이 되고, (0, 0)이면 왼쪽 하단이 기준이 되고, (1, 1)이면 오른쪽 상단이 기준이 됩니다.

Anchor

UI 요소의 위치를 부모의 Rect Transform 기준으로 설정할 때 사용됩니다. 그러므로, 부모 오브젝트가 반드시 Rect Transform 컴포넌트를 갖고 있어야 합니다.

Anchor와 부모 오브젝트 간의 거리는 화면의 비율에 따라 유지되지만, AnchorPivot 간의 거리는 고정된 거리를 유지합니다.

부모 Rect TransfomAnchor 간의 거리는 고정된 거리가 아닌, 화면( 혹은 부모 Rect Transform)의 크기에 따라 비율에 맞춰 변경됩니다. 반면 AnchorPivot 사이의 거리는 화면 크기가 바뀌어도 고정된 거리를 유지합니다.

Anchor 위치에 따른 작동 방식

1.anchorMinanchorMax

ex) anchorMin = (0, 0)이고, anchorMax = (1, 1) : 부모 Rect Transform과 일치하는 상태

화면 크기에 맞춰 UI가 자동으로 늘어납니다. AnchorPivot 간의 거리를 유지해야 하기 때문에 UI 요소가 늘어나게 됩니다.

즉 화면 크기 변경 시, UI의 크기만 변경된 것을 알 수 있습니다.



2.anchorMin = anchorMax

anchorMinanchorMax 모두 (0.5, 0.5)

화면 크기가 변해도 UI의 크기는 변하지 않고, 원래의 화면 상 위치를 비율에 맞춰 변경됩니다. AnchorPivot 간의 거리를 유지하면서도, 부모 Rect Transform 과의 비율을 유지하기 때문입니다.

세 개의 직사각형은 완전히 동일합니다. 즉 화면 크기가 다양하게 변해도, ui의 크기는 일정하게 고정됩니다.

profile
클라이언트 개발자가 되는 그 날까지 킵 고잉

0개의 댓글