Tilemap
타일맵(Tilemap) 시스템을 이용해 효율적으로 맵을 구성할 수 있다. 타일맵은 작은 이미지 조각인 타일(Tile)을 그리드 형태로 배치함으로써, 복잡한 맵이나 레벨을 손쉽게 제작할 수 있게 해준다.
개념
타일맵은 기본적으로 그리드(Grid) 컴포넌트를 기반으로 한다. 그리드는 셀 단위의 격자 구조를 제공하며, 각 셀에 원하는 타일 이미지를 할당할 수 있다. Unity에서는 타일맵과 그리드가 함께 생성되며, 여러 개의 타일맵을 한 그리드 안에 중첩해서 사용할 수도 있다. 예를 들어, 배경, 충돌 레이어, 오브젝트 레이어 등을 따로 관리할 때 유용하다.
생성과 사용
- 타일셋 생성
스프라이트를 준비하고 이후, 각 스프라이트를
Project 창 → Create → 2D → Tiles → Tile을 통해 타일 에셋으로 변환한다.
- 타일맵 생성
Hierarchy에서
우클릭 → 2D Object → Tilemap → Rectangular를 선택하면, 자동으로 Grid와 Tilemap 오브젝트가 생성된다.

- 타일맵 에디터(Tile Palette)
Window → 2D → Tile Palette 창을 열어, 위에서 만든 타일 에셋들을 Palette로 드래그 앤 드롭한다.
Brush 도구로 타일을 타일맵에 그리거나 지울 수 있다.

- 레이어 분리
여러 개의 Tilemap 오브젝트를 한 Grid 밑에 추가하여, 레이어별로 배경, 오브젝트, 충돌 영역을 분리할 수 있다.
Sorting Layer, Order in Layer 등을 조정해 렌더 순서도 관리 가능하다.

- 충돌 처리
Tilemap Collider 2D 컴포넌트를 추가하면 타일맵 전체의 셀을 따라 자동으로 Collider가 생성된다.
필요에 따라 Composite Collider 2D를 함께 사용하면 Collider를 자동으로 최적화할 수 있다.
장단점
장점
- 대규모 맵도 쉽게 제작 및 수정 가능,
- 리소스 효율성이 높음,
- 레이어 관리와 충돌 처리의 편리함,
단점
- 너무 많은 레이어, 타일이 있을 경우 퍼포먼스 이슈 발생 가능
- 타일맵의 셀 크기, 정렬 방식(Grid Type, Cell Size, Cell Layout 등)을 미리 계획하고 프로젝트를 시작해야 함
팁
Animated Tile을 사용해 애니메이션도 활용 할 수 있으며
Rule Tile을 적용하면 패턴에 따라 자동으로 주변 타일이 연결되어 편리하다.
스크립트를 통해 런타임에 타일맵을 동적으로 변경하는 것도 가능하다.
(예: tilemap.SetTile(position, tile);)