메이플 타일맵 만들기

# 학습 과정 소개

메이플스토리 월드에서는 여러 가지 지형과 이동 방식을 제공하고 있습니다. 이번 시간에는 가장 기본이 되는 지형인 메이플스토리 형태의 타일 맵에 대해 알아보겠습니다. 메이플스토리 형태의 지형은 메이플스토리 형태의 이동과 매우 밀접한 연관이 있습니다.

> 더 알아보기 메이플스토리 형태의 이동에 대해서는 [메이플 이동 개념 이해하기](/docs?postId=750)를 참고해주세요.

# 메이플스토리 형태의 지형

메이플스토리 형태의 지형은 타일 에디터에서 MapleTile 모드를 선택한 후 만들 수 있습니다. [png](1658282762014c76e4b1dd653437aa0b54c0f45122fb0) 의 타일 에디터 버튼을 길게 눌러 MapleTile 모드를 선택한 뒤, 의 Preset List에서 원하는 타일을 골라 지형을 만들면 됩니다. 단, 하나의 맵에서는 하나의 타일 맵 모드만 사용할 수 있습니다. 예를 들어 MapleTile 모드로 지형을 만든 뒤, 다른 타일 맵 모드로 변환하면 기존 지형은 모두 초기화되므로 주의해야 합니다.

타일 맵 모드를 선택하면 Hierarchy에 해당 타일 맵 모드에 맞는 맵 컴포넌트가 생성됩니다. [png](16576297374183614fc621c3747f8bd1478bddd3da31c) 타일 맵 모드로 MapleTile을 선택하면 Hierarchy에서 TileMap 엔티티를 확인할 수 있으며, 이 엔티티에 속한 TileMapComponent를 통해 MapleTile의 속성이나 색상, 형태 등을 변경할 수 있습니다.

# 지형 생성하기

## 타일 선택하기

지형은 굉장히 넓은 범위에 자유롭게 만들 수 있습니다. 따라서 메이커에서는 지형을 생성하고 수정하는데 필요한 여러 가지 편의 기능을 제공합니다.

[png](1657699332147b812f9a825ea47818c4bd63cfc4b6d68)

Preset List에서 원하는 TileSet을 선택하면 지형을 만들 수 있습니다. 하나의 Map Layer에서는 하나의 TileSet만 사용할 수 있습니다. [png](16577003279588aa2927b92194ba99c8f3cfb929b5e1c) 위와 같이 Map Layer에서  버튼을 눌러 레이어를 추가하면 하나의 맵에서 여러 TileSet을 사용할 수 있습니다.

> Tip1. TileSet을 변경하면 이전에 해당 레이어에 배치했던 지형도 모두 새로운 TileSet으로 변경되므로 주의해야 합니다.

> Tip2. `TileMapComponent`의 TileSetRUID를 수정하여 TileSet을 변경할 수도 있습니다.

## 타일 보조선 표시

Scene의 오른쪽 상단에  그리드 정보 버튼이 있습니다. [png](1657710972697056c508aa0f047ea994612920898098c)  그리드 정보 버튼을 누르면 격자 형태의 보조선이 보입니다. 이 보조선은 지형을 그리는 데 도움을 줍니다.

## 지형 그리기

지형 그리기 도구에서 지형을 그리는 방식을 선택할 수 있습니다. [png](1657711565470477997a2f4b14bf093847b8c29899d77)

[{"번호":"\u0001","항목":"선 칠하기","설명":"커서를 클릭한 지점에 타일을 그립니다. 드래그하면 드래그하는 선을 따라 그립니다."},{"번호":"\u0001","항목":"박스 칠하기","설명":"드래그한 사각형 안을 모두 타일로 채웁니다."}]

선 칠하기 모드에서 격자 형태의 보조선을 클릭하면 클릭 위치에 따라 생성되는 지형의 모양이 달라집니다.

[{"클릭 위치":"점","생성되는 지형":"[png](1657712926265695555a3dfba412796f23cbf1ca5b906)","설명":"보조선이 교차하는 점을 클릭하면 그 지점에 작은 지형이 생성됩니다."},{"클릭 위치":"선","생성되는 지형":"[png](1657713375917614def59a5674c0289c399b71c910bd3)","설명":"선을 클릭하면 양쪽 교차 지점을 포함한 선까지 지형이 생성됩니다."},{"클릭 위치":"면","생성되는 지형":"[png](16577598884962e68f73359ad41aa82bf4279e3f87f9d)  [png](165776120779882e8cb42c179416bae4c8fd6fdeab856)","설명":"면을 클릭하면 면의 테두리 선을 포함하는 지형이 생성됩니다.  또한 아래와 옆 선에 지형이 있는 상태에서 면의 가운데를 클릭하면 대각선 지형이 생성됩니다."}]

## 지형 지우기

### 우클릭으로 지우기

그리기 모드일 때, 마우스 우클릭을 하면 지형을 지울 수 있습니다. 우클릭으로는 지형만 지울 수 있기 때문에 지형을 편집하는 동안에 편리하게 사용할 수 있습니다. [gif](16582894594106cf5ad992ec04c6a9d79ccb1f3616aaa)

### 지우개로 지우기

지우개를 사용해서 지형을 지울 수도 있습니다. [png](1657762131044a2e122fbd3f1482698e73370ac8d4be0)  지우개 커서를 선택한 뒤 Scene에서 지형을 클릭하여 지우면 됩니다. 단, 전체 지우개 커서는 지형뿐만 아니라 다른 엔티티까지도 삭제하기 때문에 사용할 때 주의해야 합니다. 타일만 지우거나 엔티티만 지우고 싶다면 지우개 커서 옵션을 바꿔봅시다. [png](16577635580024e93d1c0c63b490a99cfbc548a3604c4) TileOnly를 통해 타일만 지우거나 TileExceptOnly를 통해 타일 외 다른 엔티티만 지울 수 있습니다.

## 발판(Foothold)

지형을 생성하는 가장 큰 이유는 엔티티가 이동할 수 있는 공간이 필요하기 때문일 것입니다. 메이플 타일에서 이동할 수 있는 영역을 발판이라고 합니다. 메이플 타일과 쌍을 이루는 [RigidbodyComponent](/docs?postId=750)의 이동 방식은 두 가지가 있습니다.

1\. 발판 위에서 이동 2\. 발판 밖에서 이동

발판은 지형 생성 규칙에 의해 만들어지며 대부분 직관적으로 지형과 1:1 매칭됩니다.  발판 정보 버튼을 누르면 지형 위에 빨간색 선으로 발판 정보가 나타납니다. [png](16577650286084cedcd11123845d9a418c15946fd025f)

> 더 알아보기 발판은 지형뿐만 아니라 `CustomFootholdComponent`를 사용해 엔티티에도 추가할 수 있습니다. 자세한 내용은 [발판 만들기](/docs?postId=71)를 참고하세요.