NDC2016 보충자료 - 3. 맵 생성 절차
By 기획자 본인만큼 잡다한 블로그 | 2016년 11월 7일 |
이번에는 지난 NDC2016 발표의 "맵 생성 절차"(59~69p.)에 대해서 좀 더 자세한 글을 써보려고 한다. 59페이지를 그대로 가져와보면 다음과 같다. 이 단계들에 대해 차례대로 설명하려고 한다. 1. Poisson Disc Sampling 맵에서 비교적 균일한 간격으로 노드를 선택하기 위한 방법이다. 완전한 랜덤이 아닌 이 방법으로 선택한 노드는 보기에도 좋고 활용도 편리하다. 하나하나의 노드가 도시나 별이라고 하면 서로 너무 멀거나 너무 가깝지 않은 적당한 거리를 유지할 수 있기 때문에 자연스럽기도 하다. 아래 그림에서 가장 오른쪽이 Poisson Disc Sampling 으로 생성한 노드들이다. 이미지 링크 Disc Sampling 이라는
NDC2016 보충자료 - 1. 타일 맵 구현 기본
By 기획자 본인만큼 잡다한 블로그 | 2016년 11월 2일 |
원래 블로그에는 평소에 공부했던 걸 저장하고 나중에 찾아서 참고하는 용도로 쓰고 있었는데, 최근 바빠서 그럴 시간이 없었다. 특히 NDC2016 발표를 준비하는 시간은 정말 지옥같았기 때문에(결과값이.. 결과값이 나와야 했다), 발표를 준비하면서 공부했던 내용, 그리고 발표 보충 자료를 올린다고 말해놓고 올리지 않은 채 반 년이 지나버렸다. 최근에 타일 맵을 다시 쓸 일이 생겨서 예전 자료를 참조하다가 NDC2016 발표에 썼던 기법이 기억이 나지 않는 걸 깨닫고, 시간이 나는 김에 하나씩 정리해 놓아야겠다고 생각했다. 타일 맵은 컴퓨터 게임의 초창기부터 지금까지 쓰여온 견고한 기법이다. 보통 균일한 이미지 조각인 타일(Tile) 을 이어붙여서 맵의 형태를 만든다. 보통 이렇게 만든 맵은 보기에 자연스
[cocos2d-x / 플래피위치] 무한 타일 맵
By Model ISLAND,어떤 의미에선 3차원 | 2022년 8월 16일 |
바닥이 있는 무한 맵의 경우 이번에 구현한 무한 맵은 중간에 공백이 존재합니다.이 게임은 공중에 떠 있는 게임이기 때문에 공백맵이 있어도 괜찮지만, 쿠키런같은 러닝게임이라면 공백이 있으면 안됩니다. 바닥이 이어져야 하는 경우는, 맵의 시작과 끝에 1화면 너비 정도 되는 동일한 부분을 만들어,맵의 꼬리 부분이 왼쪽 끝에 오는 순간 해당 맵을 폐기하고 새 맵을 생성해 0,0에 붙여버립니다. (※좀 더 정확히는, 맵이 정확히 왼쪽 끝에서 끝나는게 아니므로맵을 폐기하는 시점의 x좌표를 참조해 새 맵의 x좌표를 보정해 줍니다.왼쪽 끝보다 2도트 더 간 상태에서 맵의 끝이 나왔다면, 새 맵은 -2,0에 생성하는 방식) 굳이 겹치지 않고 새 맵을 기존 맵 끝부분에 맞춰서 생성해도 되는데,이때