Rect Transform
이란 유니티 UI 시스템에서 사용되는 Trasnform 컴포넌트의 확장된 버전입니다. 기존 Transform
과 달리 UI 요소의 위치, 크기, 앵커, 피벗 등을 조정할 수 있습니다. 이는 Canvas
내에서 UI 요소를 배치하고 조정하는 데 필수적인 역할을 합니다.
UI 요소의 중심으로, 위치 및 회전의 기준이 되는 점입니다.
0 ~ 1 사이의 값을 가집니다.
기본 값인 (0.5, 0.5)는 UI 요소의 중심이 기준이 되고, (0, 0)이면 왼쪽 하단이 기준이 되고, (1, 1)이면 오른쪽 상단이 기준이 됩니다.
UI 요소의 위치를 부모의 Rect Transform
기준으로 설정할 때 사용됩니다. 그러므로, 부모 오브젝트가 반드시 Rect Transform
컴포넌트를 갖고 있어야 합니다.
Anchor
와 부모 오브젝트 간의 거리는 화면의 비율에 따라 유지되지만, Anchor
와 Pivot
간의 거리는 고정된 거리를 유지합니다.
부모 Rect Transfom
와 Anchor
간의 거리는 고정된 거리가 아닌, 화면( 혹은 부모 Rect Transform)의 크기에 따라 비율에 맞춰 변경됩니다. 반면 Anchor
와 Pivot
사이의 거리는 화면 크기가 바뀌어도 고정된 거리를 유지합니다.
Anchor
위치에 따른 작동 방식1.anchorMin
≠ anchorMax
ex) anchorMin
= (0, 0)이고, anchorMax
= (1, 1) : 부모 Rect Transform
과 일치하는 상태
화면 크기에 맞춰 UI가 자동으로 늘어납니다. Anchor
와 Pivot
간의 거리를 유지해야 하기 때문에 UI 요소가 늘어나게 됩니다.
즉 화면 크기 변경 시, UI의 크기만 변경된 것을 알 수 있습니다.
2.anchorMin
= anchorMax
anchorMin
과 anchorMax
모두 (0.5, 0.5)
화면 크기가 변해도 UI의 크기는 변하지 않고, 원래의 화면 상 위치를 비율에 맞춰 변경됩니다. Anchor
와 Pivot
간의 거리를 유지하면서도, 부모 Rect Transform
과의 비율을 유지하기 때문입니다.
세 개의 직사각형은 완전히 동일합니다. 즉 화면 크기가 다양하게 변해도, ui의 크기는 일정하게 고정됩니다.