우리가 발을 딛고 살고 있는 지구. 과연 지구는 얼마나 큰 행성일까요?
지구의 표면적은 약 5억 1천만㎢에 달합니다. 대한민국 전체 면적의 약 5천 배가 넘고, 서울 면적과 비교하면 약 84만 배에 달하는 광활한 크기죠.
그런데 화면 속 ‘게임’ 중에서 현실의 지구보다 더 넓은 맵을 가진 세상이 있다는 사실, 알고 계셨나요?
광고 로드중
우리가 사는 지구 / 사진 = 엔바토엘리먼트
마인크래프트 자바 에디션 기준, 블록 1칸을 1m로 환산하면 월드의 전체 면적은 6천만m X 6천만m, 즉 약 36억㎢로 계산됩니다. 이는 현실 지구 표면적의 약 7배에 해당하는 규모죠.
마인크래프트의 월드 크기 / 사진 = (전) 마인크래프트 개발자 헨릭 크니베르그 유튜브 갈무리
그렇다면 개발사 모장은 어떻게 지구 7개를 합친 것보다 큰 세계를 구현할 수 있었을까요? 비밀은 바로 ‘절차적 생성(Procedural Generation)’ 기술에 있습니다. 마인크래프트는 이용자가 이동하는 순간 주변 지형을 실시간으로 생성하는 방식을 사용합니다.
절차적 생성 기술을 사용한다 / 사진 = (전) 마인크래프트 개발자 헨릭 크니베르그 유튜브 갈무리
광고 로드중
엘리트 데인저러스 / 사진 = 공식 홈페이지
실제로 이 게임은 실제 천문 데이터를 기반으로 약 4천억 개에 달하는 항성계를 재현한 것으로 유명합니다. 현실에 존재하는 수많은 별과 성운을 게임 속에서도 그대로 찾아볼 수 있죠.
이러한 압도적인 규모를 가능하게 한 핵심 기술이 바로 ‘스텔라 포지(Stellar Forge)’ 엔진입니다. 이건 천체물리학 이론을 기반으로, 항성계의 형성과 진화를 시뮬레이션하는 물리 기반 생성 시스템인데요.
원시행성원반에서의 중력 붕괴와 궤도 공명, 충돌과 포획, 항성풍에 의한 변화 등 실제 우주에서 일어나는 다양한 현상을 반영해 항성계를 생성합니다. 덕분에 게임 속 천체들은 단순히 무작위로 배치된 것이 아니라 실제 우주의 법칙을 어느 정도 따르는 구조를 가지게 되는거죠.
나사가 공개한 TRAPPIST-1의 콘셉트 이미지 / 사진 = 나사 공식 홈페이지
광고 로드중
이후 게임은 정식 업데이트를 통해 TRAPPIST-1의 명칭과 특성을 반영했다 / 사진= 엘리트 데인저러스 인 게임
노 맨즈 스카이 / 사진 = 공식 홈페이지
노 맨즈 스카이에서 구현된 행성 수는 무려 18,446,744,073,709,551,616개입니다. 64비트 정수가 표현할 수 있는 최대 조합 수인 2의 64승에 해당하는 숫자로, 모든 행성에 고유한 64비트 시드 값을 부여한 결과인데요.
이 숫자가 얼마나 큰지 감이 오지 않는다면 이렇게 생각해 볼 수 있습니다. 만약 1초에 행성 하나씩 방문한다고 가정해도 모든 행성을 둘러보는 데 약 5,850억 년이 걸립니다. 현재 우주의 나이가 약 138억 년으로 추정되는 만큼, 우주가 탄생한 순간부터 지금까지 쉬지 않고 탐험했다고 해도 전체의 극히 일부만 확인할 수 있는 규모죠.
노 맨즈 스카이 / 사진 = 공식 홈페이지
특히 생물 생성에는 슈퍼포뮬러(Superformula)등 수학적 모델이 활용됐고, 식물 생성도 다양한 절차 알고리즘이 활용됐다고 합니다. 이를 통해 막대한 수의 생명체와 환경을 만들어낼 수 있었다고 하죠.
컴퓨터 속 게임 하나가 이렇게 어마어마한 크기를 품고 있다는 것이 참 신기한데요. 오늘을 게임을 즐기면서 넓은 세상을 탐험해봐도 좋겠습니다.
신승원 게임동아기자(sw@gamedonga.com)