[Unity] 2D Tilemap Editor

Southbig·2023년 3월 23일
0

Tilemap

타일 형태의 리소스를 배치해 게임 월드를 표현하는 방법

Tile Palette

Window -> 2D -> Tile Palette

새로운 팔레트 생성
platform -> Create New Palette

프로젝트 내부에서 사용되는 Tile Palette, Tile Asset 등의 파일은 프로젝트 외부에 저장하면 안된다, Asset 폴더 내부 어디든 저장가능

Tile Asset 생성

Project View -> "+" -> Tile (19년도 버전)

Project View -> "+" -> Tiles ->

Tilemap 오브젝트 생성

GameObject -> 2D Object -> Tilemap ->

타일맵의 생김새는 scene 뷰를 통해서 확인할 수 있으며, 타일맵의 생김새를 결정하는 것은 그리드 게임오브젝트에 있는 그리드 컴포넌트이다

Grid

Grid 게임오브젝트
현재 자시으로 있는 Tilemap 게임오브젝트들을 관리
(여러 개의 Tilemap을 자식으로 가지고 관리할 수 있다)

Grid 컴포넌트
Cell Size : Grid 내에 각 셀의 크기
Cell Gap : Grid 내의 각 셀 사이의 간격
Cell Layout : 셀의 나열 방식
Cell Swizzle : 축의 나열 변경
Swizzle이 xyz일 때 (0, 1, 1)이라면, Swizzle을 yxz로 바꾸면 (1, 0, 1)이 된다

Tilemap

Tilemap 컴포넌트
현재 Tilemap 오브젝트에 대한 기본 설정
(Tilemap에 표현되는 모든 타일의 색, 각 타일의 중심점, 방향 등을 설정)
Scene View에서 현재 타일맵 오브젝트에 표현될 타일들을 그릴 수 있다

Tilemap Renderer 컴포넌트
현재 Tilemap 오브젝트가 화면에 그려지는 방법에 대해 설정
(Meterial, 정렬 기준, 정렬 순서 등)

Tilemap 생성시 주의

tilemap 생성시 Grid를 선택한 상태로 타일맵을 생성하게 되면 해당 tilemap의 정보로 Grid정보가 바뀌어 버리기 때문에 tilemap을 선택하지 않은 상태에서 생성을 해주어야 한다

Tilemap에 Tile Asset 배치

Tile Palette 내부에 있는 Tile Asset을 설정, 삭제할 때는 "Edit" 버튼을 누르고 한다
shift를 누르고 사용하면 범위에 존재하는 모든 타일을 삭제하는 기능이 된다

Tilemap 충돌처리

타일맵으로 생성된 게임월드의 경우 오브젝트 단위로 충돌처리가 가능하다

타일맵 단위로 충돌처리를 할 수 있기 때문에 하나의 그리드 오브젝트가 여러개의 타일맵오브젝트를 관리하게 되고 타일맵 오브젝트 여러개를 하나의 게임월드로 사용하게 된다

Tilemap Collider 2D 컴포넌트

Tilemap 오브젝트의 충돌처리를 담당하는 컴포넌트

Used By composite 선택
Rigidbody 2D 추가
Composite Collider 2D 추가

충동시 사라지는 스크립트

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ItemCollisioncheck : MonoBehaviour
{
private void OnTriggerEnter2D(Collider2D cllision)
{
Destroy(gameObject);
}
}


# Tile map 추가기능

## GameObject Brush

Tile Palette -> GameObject Brush -> Game Object에 오브젝트 추가 후 -> brush로 사용하여 tile 만들 듯이 오브젝트 생성

## Animated Tile
배치된 타일이 애니메이션을 재생하도록 하는 타일 에셋

![](https://velog.velcdn.com/images/southbig89/post/aa0110a5-1888-46dd-83a3-6ac58d491a4f/image.png)
















































profile
즐겁게 살자

0개의 댓글