728x90
캔버스(CANVAS)
모든 UI는 캔버스 자식 오브젝트로 속해 있어야 함 캔버스 안에 있지 않다면 화면에 보이지 않음
컴포넌트
Rect Transform
- 캔버스 안의 오브젝트에는 Rect Transform 컴포넌트가 무조건 있음(Transform X 캔버스가 네모나서 Rect)
- Pivot
- UI의 중심점(파랑색 가운데 빈 원)
- 씬 창에서 center로 되어있으면 안 움직임
- pivot으로 되어있어야 움직임
- Anchors
- UI의 기준점
- 앵커 값에 따라 오브젝트의 포지션 값이 바뀜
- 포지션은 앵커에서 피봇까지의 거리
- Anchor Presets
- 아무것도 안 누르면 앵커만 움직임
- 쉬프트 누르면 피벗도 같이 움직임
- 알트 누르면 포지션도 같이 움직임
- stretch 모드
- 양 옆의 빈 공간의 값을 설정해서 오브젝트의 크기를 결정
- 화면 크기가 바뀌었을 때에도 양 옆의 빈 공간 값을 기준으로 정해지기 때문에 비율이 일정함
- 캔버스를 기준으로 값이 정해짐: 캔버스 밖을 벗어나면 음수, 안으로 들어오면 양수
canvas
- screen space overlay 화면에서 사라지지 않고 계속 나타남
- screen space camera 카메라를 분할해서 사용할 수 있음 주의할 점은 메인 카메라를 넣으면 아무것도 보이지 않음
- world Space 월드 상에 캔버스를 만들어 주는 것 예를 들어 3D 게임에서 캐릭터의 이름과 길드 마크를 표시하는 것
canvas scaler
- UI Scale Mode
- Scale With Screen Size
- Reference Resulution
- 게임 화면과 해상도를 맞춰놓고 시작해야 함 = 캔버스 규격 맞추기
- 모든 씬 크기는 하나로 통일하는 것이 좋음. 간혹 유니티 버그로 인해 씬 변경 시 크기를 바꾸려고 할 때 정상적으로 변환되지 않을 수 있음
- Match
- 가로 화면일 때는 height에, 세로 화면일 때는 width에 맞추면 오브젝트가 잘리지는 않을 수 있음
- Reference Resulution
- Scale With Screen Size
Graphic Raycaster
- Blockint Objects
- Blocking Layer
Layout Group
- control child size
- 자식 오브젝트의 가로 세로 너비를 자동으로 조절할 수 있음
Content Size Fitter
- 옆 공간을 지정
Mask
- 텍스트가 오브젝트 넘어가면 안보이도록 함
Toggle
스크립트 사용하지 않고 껐다 킬 수 있음
토글끼리의 연관성이 없어서 Toggle Group 컴포넌트를 추가 해야함
728x90
반응형
'Development > Unity' 카테고리의 다른 글
| [내일배움캠프 35일차 TIL] 컴포넌트에 데이터 자동 할당, Can't add script 에러 (0) | 2024.06.04 |
|---|---|
| [내일배움캠프 32일차 TIL] 아이템 사용 트러블 슈팅 (0) | 2024.05.30 |
| [내일배움캠프 30일차 TIL] 인벤토리 창 트러블 슈팅 (0) | 2024.05.28 |
| 유니티 물리와 환경 정리: ForceMode, Raycast, 스카이박스 (0) | 2024.05.24 |
| [내일배움캠프 23일차 TIL] 스크립터블 오브젝트, 레이어 마스크, 비트 시프트 연산, 오브젝트 풀링, FindGameobjectWithTag (0) | 2024.05.17 |