Unity/Unity 개발

Rule Tile

leedh1211 2025. 7. 2. 20:42

학습 동기

타일맵 기반 게임에서 맵 제작 속도를 높이고, 타일 종류에 따라 자동으로 주변 타일을 맞춰 배치하고 싶어 Rule Tile을 학습하게 되었다. 특히 벽이나 땅 같은 타일을 수동으로 하나하나 조절하는 번거로움을 줄이고 싶었다.

학습 내용

Rule Tile이란?

Unity 2D Tilemap 시스템에서 제공하는 타일 자동 배치 도구로, 주변 타일을 기준으로 적절한 스프라이트를 자동으로 선택하여 배치할 수 있다. Rule Tile은 Unity의 2D Tilemap Extras 패키지에 포함되어 있으며, 별도 설치가 필요하다.

사용 방법

  1. 2D Tilemap Extras 설치
    Unity Package Manager에서 Git URL 추가
  2. arduino
    복사편집
    https://github.com/Unity-Technologies/2d-extras.git
  3. Rule Tile 생성
    Project 창에서 우클릭 → Create > 2D > Tiles > Rule Tile
  4. Rule 설정
    타일 에디터에서 중심 타일을 기준으로 주변 8방향(상하좌우 + 대각선)에 대해 조건을 설정할 수 있다.
    각 조건은 다음 중 하나로 지정 가능:
    • This (같은 Rule Tile)
    • Not This (다른 타일)
    • Any (무관)
  5. 스프라이트 연결
    각 Rule 조건에 따라 출력할 스프라이트를 연결하며, 규칙 순서를 잘 구성해야 예외 없는 자동 배치가 가능하다.
  6. Tile Palette 등록 및 사용
    만든 Rule Tile을 Palette에 등록한 뒤 브러시로 그리면 자동으로 형태에 맞는 타일이 배치된다.

특징

  • Rule Tile은 ScriptableObject 기반이기 때문에 Tilemap에서 참조만 해도 자동 반영된다.
  • 변경사항이 즉시 반영되므로 타일맵 제작과 유지보수가 매우 효율적이다.
  • 다양한 스프라이트를 조합해 규칙적으로 구성된 환경을 만들 수 있으며, 복잡한 맵을 짧은 시간 안에 설계할 수 있다.

활용 사례

 

  • 벽 타일, 땅 타일, 길 타일 등 연결형 타일을 자동으로 배치할 때 유용하다.
  • Procedural Map Generation 시스템에서 Rule Tile을 활용하면 맵 생성 후 자동으로 타일 모양이 조정되어 시각적 완성도를 높일 수 있다.
  • RPG, 로그라이크, 전략 게임 등에서 반복적으로 등장하는 배경 타일을 간편하게 구성할 수 있다.
  • 변형형 Rule Tile (예: Random Rule Tile, Tiling Rule Override 등)을 활용하면 다양한 지형을 표현할 수 있다.

 

주의점

 

  • Rule 조건의 우선순위가 중요하다. 조건이 중복될 경우 먼저 매칭된 규칙이 적용되므로, 예상치 못한 스프라이트가 출력될 수 있다.
  • 대각선까지 포함하여 세밀한 규칙을 설정하려면 타일 종류가 많아지고 관리가 어려울 수 있다.
  • 성능 상으로는 큰 문제가 없지만, 너무 많은 Rule Tile을 한 번에 그리면 복잡한 계산이 누적되어 에디터가 느려질 수 있다.
  • Rule Tile은 Tilemap Collider와 함께 사용할 경우 충돌 처리가 의도대로 되지 않을 수 있으므로 별도로 Collider 설정이 필요하다.