
바닥이 있는 무한 맵의 경우
이번에 구현한 무한 맵은 중간에 공백이 존재합니다.
이 게임은 공중에 떠 있는 게임이기 때문에 공백맵이 있어도 괜찮지만, 쿠키런같은 러닝게임이라면 공백이 있으면 안됩니다.
바닥이 이어져야 하는 경우는, 맵의 시작과 끝에 1화면 너비 정도 되는 동일한 부분을 만들어,
맵의 꼬리 부분이 왼쪽 끝에 오는 순간 해당 맵을 폐기하고 새 맵을 생성해 0,0에 붙여버립니다.

(※좀 더 정확히는, 맵이 정확히 왼쪽 끝에서 끝나는게 아니므로
맵을 폐기하는 시점의 x좌표를 참조해 새 맵의 x좌표를 보정해 줍니다.
왼쪽 끝보다 2도트 더 간 상태에서 맵의 끝이 나왔다면, 새 맵은 -2,0에 생성하는 방식)
굳이 겹치지 않고 새 맵을 기존 맵 끝부분에 맞춰서 생성해도 되는데,
이때 언제 기존 맵을 폐기하고 새 맵을 기준으로 판단하게 할 것인가(보통은 플레이어 캐릭터 위치 기준)의 추가 처리가 필요합니다.
까까런에서는 바닥이 존재하는 무한맵을 처리하고 있습니다.
at 2022/08/16 12:42
덧글