게임심화 - 11. Script - UI_UGUI_1

LSDrug·2024년 7월 4일

1. Game Features

  1. C# Script
  2. Engine
  3. Physics
    • 충돌체(RigidBody)
      - Ray
    • Simulation
      - AddForce
  4. UI
  5. Effect
  6. Sound
  7. Tool
  8. Animation
  9. Input
  10. Visual
  11. State
  12. Data

2. UGUI(Unity GUI)

CUI : 텍스트 형식의 UI

ex) 텍스트 게임에서 주로 사용하는 형식

GUI : 그래픽 형식의 UI, 다양한 활동이 가능하다.

Unity UI : Unity User Interface

  • 엔진 차원에서 지원
  • 게임 및 애플리케이션용 사용자 인터페이스를 개발하기 위한 UI 툴킷
  • 구성 요소와 게임 보기를 사용하여 사용자 인터패이스를 정렬, 위치지정 및 스타일 지정하는 GameObject 기반 UI 시스템
  • Unity 편집기에서 사용자 인터페이스를 생성하거나 변경할 수 있다.

Canvas

  • Draw order of elements
  • Canvas의 UI 요소는 계층 구조에 나타나는 것과 동일한 순서로 그려짐
    - 첫 번째 자식이 먼저 그려지고 두 번째 자식이 다음에 그려짐
  • 두 개의 UI 요소가 겹치면 이전 요소 위에 나중에 표시되는 요소가 표시
    - 다른 요소 위에 표시되는 요소를 변경하려면 계층 구조에서 요소를 끌어서 순서를 변경
    • Transform 구성 요소에서 SetAsFirstSibling, SetAsLastSibling, SetSiblingIndex 메서드를 사용해 스크립팅에서 순서를 제어할 수도 있다.

Canvas - Render Modes

Basic Layout

  • pivot (중심축)

레이아웃은 해당 피봇을 중심으로 회전을 하게 된다. 즉 UI의 중심축 위치를 조절할 수 있다.

  • Anchors (기준점)

UI 오브젝트의 위치를 나타내는 특정한 기준점 모든 UI는 기준점을 기준으로 위치하게 된다.

다양한 해상도에 대응하기 위해서 기준점을 사용하게 된다.

총 9 가지의 기준점을 가진다.

  • 상단(좌측, 중간, 우측)
  • 중단(좌측, 중간, 우측)
  • 하단(좌측, 중간, 우측)

기준점은 분리도 가능하다

그러나 이미지가 깨지는 현상이 발생할 수 있다.

이런 경우에는 상하는 상관없이 좌우 비율에 따라 달라지도록 할 수 있다.

  • Anchor presets : 유니티에서 제공하는 기준점의 프리셋

Visual Components

  1. Text

  2. Image

Interaction Components

Rich Text - Web 제작과 Md(Mark down)의 형태와 유사

색은 헥사 코드도 넣을 수 있다.

Sprite Atlas

유니티는 하나의 스프라이트 당 그려달라는 요청을 해야한다. 이에 한 프레임에 요청이 많이 생길 수 있다. 이는 비효율적이라고 할 수 있다.

Atlas를 통해 딱 1번에 찍힐 수 있도록 한다.


profile
마약같은 코딩, 마약같은 코딩러

0개의 댓글