2D 타일맵

댓글 0
댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.

댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.
타일맵
팔레트에 물감을 짜고 도화지에 그림을 그리듯,
Tile Palette에 타일을 등록하고 Scene에 배치해 맵을 만듭니다.
같은 타일을 반복해서 사용하므로 넓은 맵도 쉽게 만들 수 있습니다.
필요하면 Tilemap Collider 2D로 벽과 바닥에 충돌을 설정합니다.
사용 방법

Tilemap Collider 2D : 타일맵에 콜라이더를 설정할 수 있음타일맵 크기 설정 방법
타일맵 스프라이트의 Open Sprite Editor 에서 타일의 가로/세로 길이를 확인하고,

타일맵 스프라이트의 인스펙터에서 Pixels Per Unit을 타일의 가로/세로 로 설정한다.

타일맵 오브젝트 한 칸에 딱 맞게 들어가는 모습

2D 오브젝트에 Physics Material 2D 설정해주기

2D 오브젝트의 Rigidbody 2D에 Material에 Physics Material 2D를 설정할 수 있다.

표면의 마찰 계수입니다.
충돌했을 때 얼마나 튕겨 나가는지를 설정합니다.
0: 전혀 튕기지 않습니다.1: 에너지 손실 없이 완전히 튕기는 값입니다.두 Collider에 서로 다른 마찰값이 설정되어 있을 때, 두 마찰값을 어떤 방식으로 합칠지 정합니다.
현재 Mean은 두 값의 기하평균을 사용합니다.
예를 들어 다음 두 물체가 충돌한다면:
플레이어 마찰력: 0.4
벽 마찰력: 0.9
Mean의 계산은 다음과 같습니다.
√(0.4 × 0.9) = 0.6
따라서 실제 충돌에 적용되는 마찰값은 0.6 정도가 됩니다.
두 Collider에 서로 다른 Bounciness가 있을 때, 실제 튕김 값을 어떤 방식으로 결정할지 정합니다.
현재 Maximum은 두 값 중에서 더 큰 값을 사용합니다. 한쪽 물체라도 잘 튀는 재질이면 높은 튕김 값이 적용됩니다.
Platform Effector 2D


Platform Effector 2D는 한쪽 방향으로만 충돌하는 발판을 만들 때 사용하는 컴포넌트입니다. 캐릭터가 발판 아래에서 위로 점프할 때는 발판을 통과할 수 있지만, 발판 위에서 아래로 떨어질 때는 통과하지 못하고 발판 위에 착지하게 만들 수 있습니다.
Unity에서는 이러한 방식을 One Way Collision, 단방향 충돌이라고 합니다.
발판 오브젝트에 다음 컴포넌트를 추가합니다.
Platform
├─ SpriteRenderer
├─ BoxCollider2D
└─ PlatformEffector2D
BoxCollider2D는 다음처럼 설정합니다.
Is Trigger: 해제
Used By Effector: 체크
Is Trigger를 켜면 물리적인 충돌을 하지 않으므로 해제해야 합니다. Used By Effector를 체크하면 해당 Collider가 같은 오브젝트에 붙은 Platform Effector 2D의 영향을 받습니다.
Platform Effector 2D는 다음처럼 설정합니다.
Use One Way: 체크
Surface Arc: 180
Develog는 단순히 글을 쓰는 공간이 아닙니다. 성장의 과정을 기록하고, 그 기록으로 나를 증명하며 원하는 기회를 얻는 곳이길 바랐습니다. 누군가의 꿈으로 향하는 중간다리가 되는 것, 그것이 Develog를 만든 이유입니다.

우리들의 게임 발매 이야기

안녕하세요. 플밍 4기 입니다. 게임 개발을 배우기 전 네트워크 엔지니어 도메인에서 익히고 배웠던 네트워크 이론에 대한 기초 입니다. 학습에 도움이 되길 바라며 공유 드립니다.
Develog는 단순히 글을 쓰는 공간이 아닙니다. 성장의 과정을 기록하고, 그 기록으로 나를 증명하며 원하는 기회를 얻는 곳이길 바랐습니다. 누군가의 꿈으로 향하는 중간다리가 되는 것, 그것이 Develog를 만든 이유입니다.



안녕하세요. 플밍 4기 입니다. 게임 개발을 배우기 전 네트워크 엔지니어 도메인에서 익히고 배웠던 네트워크 이론에 대한 기초 입니다. 학습에 도움이 되길 바라며 공유 드립니다.