#9-1 유니티 타일 맵, 타일 팔레트 포스팅에 이어서 진행을 하도록 하겠습니다.
#9-1 유니티 타일맵, 타일 팔레트 링크는 하단에 소개하겠습니다.
이번 포스팅은
1. 타일 팔레트 도구를 소개
2. 타일 팔레트를 사용하여 타일맵을 그리기
3. 타일 맵의 레이어를 정렬하기
세 가지 내용을 다루겠습니다.
포스팅은 유니티 2D 게임 개발(게임 개발 프로그래밍)에 나온 예제로 진행합니다.
타일 맵 도구 소개
1. Select an area of the grid(선택 도구) : 그리드 영역 또는 특정 타일을 선택합니다.
※단축키는 S입니다.
2. Move selection with active brush(이동 도구) : 선택한 영역을 옮깁니다.
※단축키는 M입니다.
3. Paint with active brush(색칠 도구) : 타일 팔레트에서 선택한 타일로 타일 맵을 칠합니다.
※단축키는 B입니다.
4. Paint a filled box with active brush(사각형 도구) : 선택한 타일로 사각형 영역을 채울 수 있습니다.
※단축키는U입니다.
5. Pick or marquee select new brush(선별 도구) : 타일 맵에 이미 칠해 놓은 타일을 새로 칠할 타일로 사용합니다.
※단축키는 I입니다.
6. Erase with active brush(지우기 도구) : 타일 맵에 칠한 타일을 지웁니다.
※단축키는 D입니다. 또한 shift 키를 누른 상태로 클릭하여 사용할 수도 있습니다.
7. Flood fill wtih active brush(채우기 도구) : 선택 중인 타일로 타일 맵 영역을 채웁니다.
※단축키는G입니다.
타일 맵 그리기
타일 팔레트에서 원하는 타일을 선택한 다음에 단축키 B (Paint with active brush(색칠 도구)) 를 사용하여 Scene뷰에 그립니다.
위에 소개하였던 타일 맵 도구 소개를 활용하여 타일 맵을 그리면 되겠습니다.
다음은 플레이어가 이동을 할 때 방해할 수 있는 장애물(오브젝트)을 설치해보도록 하겠습니다.
Tlie Palette 창 > Create New Palette를 클릭하여 새로운 팔레트를 생성합니다.
새로운 팔레트 이름 : OutdoorObjects 입력
저장 위치 : Assets 폴더 > TilePalettes 저장
미리 준비해놓았던 Assets > Sprite > Objects 폴더에 있던 OutdoorObjects 스프라이트를 방금 만든 OutdoorObjects에 드래그 앤 드롭합니다.
저장 위치 : Assets > Sprites > Tiles > Objects에 저장을 합니다.
사진과 같이 타일 맵에 오브젝트 스프라이트를 그릴 수 있도록 준비를 하였습니다.
위와 같은 방법으로 타일맵에 새로운 오브젝트 타일을 그리면 사진과 같이 오브젝트가 위치한 타일에 Scene뷰의 배경색이 그대로 노출이 됩니다.
이것을 해결하기 위해서는 정렬 레이어를 사용해야 합니다.
타일 맵 정렬하기
Hierarchy 창 > Grid 오브젝트 > Tilemap 오브젝트의 이름을 Layer_Ground로 변경 해줍니다.
Hierarchy 창 > Grid 오브젝트 > 마우스 오른쪽 클릭 > 2D Object > Tilemap을 눌러 새로운 타일맵을 생성해줍니다.
새롭게 생성한 Tilemap의 이름을 Layer_Tree_and_Rocks로 변경해줍니다.
이름에서 알 수 있듯이
Layer_Ground는 바닥을 담당하여 그릴 것입니다.
Layer_Tree_and_Rocks는 바닥위에 올라가는 나무와 바위를 그릴것입니다.
먼저 Scene뷰에 바위로 그려져 있던 타일을 자신이 원하는 Ground 타일로 변경해줍니다.
이때 Active Tilemap은 Layer_Ground로 설정하여야 합니다.
저는 사진 처럼 타일을 변경하였습니다.
Tile Palette > Active Tilemap > Layer_Tree_and_Rocks 로 변경하고 자신을 원하는 타일을 선택하여 Sence뷰에 배치하였더니 바닥타일 위에 오브젝트 타일이 올라간 것을 볼 수 있습니다.
게임 실행을 해보면 그려놓았던 나무와 바위가 사라진 것을 Game뷰에서 확인 할 수 있습니다.
이 문제는 스프라이트 렌더러에서 정렬 레이어를 사용하여 스프라이트의 그릴 순서를 정하지 않았기 때문입니다.
1. Tags & Layers > Sorting Layers > Grounds, Objects 레이어를 추가하고 사진과 같이 정렬합니다.
2. Layer_Ground 오브젝트와 Layer_Tree_and_Rocks 오브젝트의 Inspector창 > Tilemap Renderer > Sorting Layer > Grounds, Objects 로 설정하였습니다.
※아래 링크를 확인하면 정렬레이어를 설정하는 방법을 알 수 있습니다.
게임을 실행해 보시면 정상적으로 타일이 그려진 것을 확인할 수 있습니다.
마지막으로 Ctrl + S를 눌러 Scene을 저장합니다!
감사합니다! :)
'유니티2D' 카테고리의 다른 글
#11-1 유니티 시네머신(Cinemachine)으로 플레이어 추적하기 (0) | 2020.12.04 |
---|---|
#10 유니티 그래픽, 카메라 (0) | 2020.12.03 |
#9-1 유니티 타일맵, 타일팔레트 (0) | 2020.12.01 |
#8-3 유니티 캐릭터(Player) 이동하기_애니메이션(블렌드트리) (0) | 2020.12.01 |
#8-2 유니티 캐릭터(Player) 이동하기_애니메이션(전환) (1) | 2020.11.30 |