반응형
방법 1 (자동)
- Tilemap-> Add Component -> Tilemap Collision 2D를 생성하면 자동으로 Collision을 만들어줌
방법 2 (수동)
- Collide 전용 tilemap을 만들어서 이동이 불가능한 위치에 특정 tile를 올림 ex(X모양 이미지 등등.. ) 여기서는 돌 이미지를 이용함
↓↓↓↓↓↓↓
이후 Collide 전용으로 만든 tilemap에 Script를 생성해서 다음과 같이 입력함
public class Test : MonoBehaviour
{
public Tilemap _tilemap; // tilemap에 Collide tilemap을 넣음
void Start()
{
}
void Update()
{
List<Vector3Int> blocked = new List<Vector3Int>();
// cell의 경계선(카메라에 담기는 영역)을 cellBounds라는 애로 얻어올 수 있음,
// allPositionsWithin = tilemap에서 tile 하나하나의 정보를 다 가져옴
foreach (Vector3Int pos in _tilemap.cellBounds.allPositionsWithin)
{
// tilemap상에 있는 모든 좌표를 찾아서 list에 넣음
TileBase tile = _tilemap.GetTile(pos);
if (tile != null)
blocked.Add(pos);
}
}
}
// 이후 얻은 정보들을 서버로 보내고 서버에서는 그 정보를 바탕으로 통제하면 됨
tilemap.cellBounds 에는 밑의 정보가 들어있음
화면 캡처: 2022-06-27 오후 5:04
반응형
LIST
'Unity > 2D' 카테고리의 다른 글
Unity 2D Anim (0) | 2022.06.29 |
---|---|
Unity 2D Grid상의 좌표 (0) | 2022.06.28 |
Unity 2D Tilemap Collsion 정보 추출 (0) | 2022.06.28 |
Unity 2D Tile Layer (0) | 2022.06.27 |
Unity 2D Tilemap (0) | 2022.06.27 |