[TIL-260220] 2D

데비·2026년 2월 20일

본과정

목록 보기
60/64

오늘 배운 내용

- 2D


3D 환경과 차이점?

Depth Test -> 기본적으로 해당 단계를 비활성화/생략

-> 2D 랜더링은 Sorting Layer / Order in Layer


유니티 2D 컴포넌트

  • Collider 2D

    • Circle
    • Box
    • Capsule
    • Edge
    • Polygon
    • Composite(⭐)
  • Rigidbody 2D

  • Sprite Renderer

[+추가]

  • Physics Material 2D
  • Sorting Layer 설정하는 법
  • 2D Physics 설정 (Project Settings)

유니티 2D를 제작 전 사고 방식

  • Sprite 그림(연출)
  • Collider 감지
    -> 결국 게임 규칙을 따름

Edge Collider 2D

  • 선 하나 시작 -> 원하는 콜라이더를 직접 지정 가능

Polygon Collider 2D

  • 복잡한 모양 자동 생성
  • 성능이 상대적으로 무거움

Composite Collider 2D

  • 하위 객체 콜라이더를 하나로 관리해주는 친구

Tilemap

Step 1. Tilemap - Rectangluar 생성

  • 2D Object -> Tilemap -> Rectangular

Step 2. Create New Palette

  • 'Resources/Palette/Test palette' 생성

Step 3. Tiles 드래그 드롭

  • 'Resources/Tile/Tiles 등록'

Step 4. 종류

4-1. Brush(B)

  • "개별 Tile에 칠하기 가능"

4-2. Flood fill with active brush(G)

  • "Tile 한 번에 채우기 가능"

4-3. Transform 조정

  • "다음 Tile 회전해서 칠하기 가능"

4-4. Tile Transform 변경 가능

4-5. GameObject Brush 옵션

  • "애니메이션 들어간 캐릭터를 넣어서 Brush로 쭉 그려보기"

4-6. Group Brush 옵션

  • "스포이드로 짜서 원하는 Tile 만들고 Grid에 찍어보기"

4-7. Random Brush

  • "랜덤으로 칠해질 Tile을 등록하고 Grid에 찍어보기"

4-8. Rule Tile (⭐)

  • "매번 매끄러운 타일을 만들기 위해서 일일이 Brush 하기 번거롭고, 자동으로 타일을 매끄럽게 매핑해주면 좋을것같음"

Sprite Animation

  • 이미지를 시간 순서로 변화시키는/바꾸는 것

Sprite Sheet

  • 여러 개의 Sprite 이미지를 "한 장의 이미지"에 모아둔 것

Q. 사용하는 이유?

  • 관리가 편하다
  • 메모리 효율이 좋다 (GPU 바인딩 감소)

Unity에서 사용법

  1. Texture Type -> Sprite (2D and UI)
  2. Sprite Mode -> Multiple
  3. Sprite Editor -> Slice (Grid by Cell Size)
  4. Apply
  • 위 과정을 거치면
    Sprite Sheet가 "개별 Sprite들"로 분리된다.

Sprite Mode = Multiple

  • 이미지 하나 = 여러 Sprite

Pixels Per Unit (PPU)

  • "PPU는 픽셀을 월드 단위로 환전하는 기준" "1유닛 = 몇 픽셀인가?"
64px = 1 Unity Unit
  • PPU 64
  • 이미지 64px
    -> 월드에서 1유닛

[예시]

  • 이미지 크기: 96px
  • PPU: 64

계산:

96 / 64 = 1.5 Unit

즉, 씬에서 높이 1.5 유닛으로 보임

Q. 중요한 이유

  • "카메라 기준이 Unity Unit이기 때문에"

ex)

orthographicSize = 5;

-> 카메라 중점 기준, 위로 5 유닛


Mesh Type 설명 (중요⭐)

  1. Full Rect
  • "사각형 메쉬 전체 사용"

[장점]

  • 안정적
  • 타일맵, 캐릭터에 안전

[단점]

  • 투명 영역도 포함
  1. Tight
  • "투명 영역 제외하고 메쉬 생성"

[장점]

  • 오버로드 감소

[단점]

  • 경계가 불규칙
  • 타일 경계 어긋날 수 있음
  • 픽셀 아트 흔들림 발생 가능

[실무 추천]

용도추천
캐릭터Full Rect
타일맵Full Rect
파티클Tight 가능

Wrap Mode

  1. Repeat
  • 텍스처 반복
  • 타일처럼 무한 반복 가능
  1. Clamp
  • 끝 픽셀 유지
  • 대부분 2D 게임 기본값

Q. 언제 Repeat?

  • 배경 패턴
  • 무한 스크롤

Filter Mode (매우 중요⭐)

  1. Point (no filter)
  • 픽셀 그대로 표현
  • 픽셀 아트 필수
  1. Bilinear
  • 부드럽게 보간
  1. Trilinear
  • 3D에서 사용
  • 2D에서는 거의 안 씀
    "픽셀 게임이면 무조건 Point"

(+추가) Sprite Atlas란?

  • 여러 Sprite를 하나의 큰 텍스처로 묶어서 성능을 올리는 시스템

Q. 왜 쓰는가?

  • GPU같은 텍스처를 쓰는 오브젝트를 한 번에 그릴 수 있다. 텍스처가 다르면 -> Draw Call 증가 -> 성능 하락

Q. 언제 쓰는가?

  • 모바일
  • UI 많을 때
  • 캐릭터 수 많을 때

0개의 댓글