본문 바로가기

유니티 2D 기본(Platformer Game)

4. TileMap으로 플랫폼 만들기

앞에서는 Floor 오브젝트를 하나하나 x축 옮겨가며 이어붙였지만, TileMap을 사용하면 그러지 않아도 됩니다.

앞에서 사용하던 Floor오브젝트는 다 지우고 Finish, Coin, Enemy 오브젝트는 disable상태로 두겠습니다.

 

Tilemap 오브젝트 생성 

2D Object -> Tilemap -> Rectangular

Tilemap Palette 열기

상단 메뉴 Window -> 2D -> Sprite Editor

 

스프라이트 이미지를 Palette에 드래그 앤 드랍

 

저장 경로를 정하고 저장하면 팔레트에 뒤죽박죽으로 생성됩니다. 이를 정리합니다.

Edit를 눌러 수정모드

S : 선택

M : 이동

Edit를 눌러 그리기 모드

B : Scene에 그리기

Scene에 그려줍니다.

타일맵에 콜라이더 주기

앞처럼 모든 오브젝트에 콜라이더를 주지 않고 한번에 줄 수 있습니다.

Material에 앞서 만들었던 Physics를 적용합니다.

 

Layer은 Platform 적용

 

오르막길 경사 Collider 수정

아래 같은 경우는 Collider에 턱이 있어 플레이어가 경사를 못올라갑니다. 이를 해결하기 위해선

해당 스프라이트의 Sprite Editor 열기

상단 모드 다운바에서 Custom Physics Shape 클릭

마우스로 Collider가 되는 경계선을 조정할 수 있습니다. 꼭짓점이 되는 저 네모는 delete로 삭제 가능합니다. 물론 추가도 가능합니다. 작업 후 상단 Apply를 눌러 저장하고 닫습니다.

 

팔레트에 다시 돌아와서, 수정 전 해당 스프라이트를 삭제해줍니다.

지우기 : 단축키 D

저장경로에 있는 파일까지 삭제합니다.

 

수정한 스프라이트를 드래그 앤 드랍으로 팔레트에 끌어다 놓으면 저장했던 폴더에 저장하고 사용하면 됩니다.

 

마지막으로 카메라가 플레이어를 따라가게 Main Camera 오브젝트를 플레이어 오브젝트 안에 넣어주고 위치를 0으로 초기화 해줍니다. (z축 제외)

 

결과