TileMap Collision

CJB_ny·2022년 4월 29일
0

2D_Project

목록 보기
4/23
post-thumbnail

이렇게 레이어를 관리하면 이점이 여러가지가 있다!

layer order에 따라 알파 값 가지고있는 애들도 자연스럽게 잘 출력이 된다.

(투명한 부분들)

Collision 추출

Component에

tilemap Collider붙이면 이렇게 뜨는데

정확하게 콜라이더 설정하고싶다면

이 스프라이트를 수정을 해야한다.

여기서 tilemap_Env여기서 설정하고있었는데

콜라이더 타입을

None, Grid로 수정한다거나 하면

Grid하면 전체 영역이 잡혀있지 않고

중간에 한칸만 설정된다.

그래서 tilemap Collider를 사용하기보다

게임안에서 여러 상황이 있을 수 있기에 우리가 레이어를 하나 더 만들어서

직접 찍어주는게 더 좋다!

이런 레이어 하나 더 만들어서 못가게 만들어야된다.

이렇게 레이어 하나 더 만들어서 Collision레이어에 돌맹이 넣으면된다.

그래서

이부분을 다른 하나의 파일로 빼가지고 서버랑 공유를 할 것이다.

이 파일 tilemap_collision에 붙여서

이제 타일이 깔려서 갈 수 있는 부분과 못가는 부분을 구분을 하게 한다음에

그것을 텍스트 파일이든 다른 포맷으로 우리가 추출 할 수만있으면된다.

TestCollision에

public Tilemap _tilempa; 열어줘서 연결 ㄱㄱ

그리고 이렇게 SetTile로 만들어서 유니티 실행하면 동적으로 타일 만들 수도있다.

Vector3Int는 Vector3랑 같은데 원래는 float으로 받는데 그냥 int로 받는다.


그런데 우리가 관심있는 부분은

모든 타일을 다 스캔을 하면서 그곳에 갈 수 있는지를 보는 것이다.

Bounds는 경계선인데 이 경계선을 cellBounds로 얻어 올 수 있다.

이렇게하면 갈 수 있는 모든 영역을 하나씩 다 스캔을 하면서

이딴식으로 breakPoint잡고 실행하면

56개 들어가있다.

업로드중..

이제 이런정보들을 이용해서 타일로 뺴내가지고 이것을 서버한테 어떻게든

건내주기만 하면 된다.

그런데 이렇게 계속 껏다 켯다 할게아니라

툴을 사용해서 해보도록 하자.

profile
https://cjbworld.tistory.com/ <- 이사중

0개의 댓글