기본 패턴
text
앵커가 기준점
피벗이 회전/스케일 중심
Canvas Scaler가 해상도 대응 규칙설명
- UGUI 배치 문제의 대부분은 사실
RectTransform을Transform처럼 생각해서 생깁니다. UI는 월드 좌표보다 부모 rect 안에서의 상대 기준이 더 중요합니다. - anchor는 부모의 어느 지점을 기준으로 붙을지를 정하고, pivot은 자신이 회전/확대/축소될 때 어느 지점을 중심으로 삼을지를 정합니다. 즉 anchor는 "어디에 붙는가", pivot은 "어디를 중심으로 움직이는가"라고 생각하면 이해가 쉽습니다.
- stretch anchor를 쓰면 부모 크기에 따라 UI가 늘어나거나 줄어듭니다. 전체 배경, 상하단 바, safe area 대응처럼 화면 비율 변화에 적응해야 하는 요소에서 자주 사용합니다.
Canvas Scaler는 레퍼런스 해상도 기준으로 UI를 어떻게 스케일할지 정합니다. 같은 레이아웃이라도Scale With Screen Size설정과 Match 값에 따라 체감 결과가 크게 달라집니다.- 그래서 UI가 해상도마다 깨질 때는 개별 오브젝트 좌표를 만지기 전에 anchor, stretch, pivot, Canvas Scaler 순으로 점검하는 편이 더 빠릅니다.
빠른 정리
| 항목 | 설명 |
|---|---|
| anchor | 부모 rect 안에서의 기준점 |
| pivot | 자신의 회전/스케일 중심점 |
| stretch | 부모 크기에 따라 함께 늘어나거나 줄어듦 |
Canvas Scaler | 해상도 변화에 대한 전체 UI 스케일 규칙 |
| 점검 순서 | 위치 문제보다 먼저 anchor/pivot/scaler 조합을 본다 |
주의할 점
UI가 엇나갈 때 anchored position만 억지로 맞추면 해상도 하나에서는 좋아 보여도 다른 비율에서 다시 깨집니다. 먼저 anchor와 stretch가 의도에 맞는지 확인한 뒤 숫자를 미세 조정하세요.
참고 링크
3 sources