본문 바로가기
Development/Unity

UGUI 개념 정리

by 식냥 2024. 5. 29.
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에 맞추면 오브젝트가 잘리지는 않을 수 있음

Graphic Raycaster

  • Blockint Objects
  • Blocking Layer

Layout Group

  • control child size
    • 자식 오브젝트의 가로 세로 너비를 자동으로 조절할 수 있음

Content Size Fitter

  • 옆 공간을 지정

Mask

  • 텍스트가 오브젝트 넘어가면 안보이도록 함

Toggle

스크립트 사용하지 않고 껐다 킬 수 있음

토글끼리의 연관성이 없어서 Toggle Group 컴포넌트를 추가 해야함

 

728x90
반응형