1321
2016-01-26 13:52:15
6
과거 게임들은 기술력과 컴퓨터의 메모리, 연산속도등의 한계로 인하여 게임의 전체를 나누어 진행하도록 했습니다.
그것이 스토리든, 지도든, 공간이든 구분없이 한번의 로딩으로 모든 것을 구현할 수 없었습니다.
예를 들어 우리가 100m 짜리 길이의 길을 건너는 게임을 만들었다면, 한번에 100m 짜리를 로딩할 수 없었습니다.
그럴만한 연산처리도 힘들었고, 그 길고 큰 맵을 한번에 읽을만한 메모리량도 부족했습니다.
단순히 네모난 하얀 벽으로 둘러쌓인 100m 짜리 맵을 만들 수 는 있었겠지만, 게임이라는게 하얀벽에
주인공만 서있는게 아닌것처럼 주변 환경을 그래픽으로 꾸몄고, 하늘과, 햇빛(광원), 땅 텍스쳐, 초원에 있는 풀들,
돌, 움직이는 NPC들과 그들과의 상호작용등등 컴퓨터가 처리해야하는 것이 굉장히 많았습니다.
그래서 CPU와 메모리, VGA가 버틸 수 있을만큼의 거리로만 나누어서 중간중간 로딩으로 그 다음 챕터를,
또 로딩하여 다음 챕터를 이동하는 식을 사용했죠. 이런 방식을 사용했기 때문에 이전 게임들의 게임방식은
대부분 선형적인 구조를 띄었습니다. 이야기를 쭉 따라가며 제작사들이 만든 공간을 쭉 걸어가는 듯한 방식이었습니다.
즉 게임 시작->로딩->공간->로딩->공간->로딩->공간->로딩->엔딩처럼 마치 외줄타기로 엔딩이란 건너편을
지나가는 형식이었죠. 허나 기술이 발전하면서 실시간 로딩방식을 사용하게 됩니다. 이전에는 조그마한 방을 만들고
문을 통해 다음 방을 로딩하는 방식이었으나 주인공이 앞으로 걸어가면 그 주인공의 움직임에 따라 한참 앞부분을
미리 로딩하는 방식을 사용합니다. 즉 내가 출발점에서 10m 지점까지 걸어가는동안 게임은 10~20m 지점을
캐릭터 이동에 맞춰 로딩하는 방식이죠. 하지만 게임을 처음 켰을때 바로 그 모든 지역의 텍스쳐와 광원,
그림자, 스크립트등을 로딩하기에는 너무 어마어마한 양이고 로딩 시간이 길어지기 때문에 편법을 사용하게 되는데
처음에는 텍스쳐도 그림자도 광원도 없는 아주 밋밋한 점토같은 기본적인 형태로만 전체맵을 간단하게 로딩하고
유저가 서있는 장소의 반경 몇미터만 텍스쳐/광원/그림자/스크립트등 세세한 부분을 로딩하는 방식을 사용합니다.
그래서 가끔 오픈월드 게임들을 플레이할 때 유저가 서있는 장소는 그래픽이 좋으나 버그나 프리캠등을 이용하여
조금 먼 지역으로 카메라를 이동시키면 점토같이 밋밋한 텍스쳐 덩어리들만 보이는 경우가 많습니다. 물론 그 지역도
캐릭터가 그쪽으로 이동하면 실시간 로딩방식에 따라 세세한 부분이 로드되는거죠.
이 실시간 로딩방식은 점차 10m씩 따로따로 로딩하는 형식을 사라지게 만들었고
100m짜리 길을 10번으로 나누어 로딩하던걸 5번으로, 3번으로 2번으로, 단 한번의 로딩으로 게임 전체의 지역을
돌아다닐 수 있는 방식이 가능하게 만들어주었습니다. 이것은 CPU의 연산처리 능력과 V램의 용량이 높아지고
성능이 좋아지면서 시너지 효과를 일으키게 됩니다.
이렇게 실시간로딩의 방식이 사용되다보니 구태여 유저들을 처음부터 엔딩까지 강제적으로 끌어가던 선형적 방식을
사용할 필요가 없어지고, 추가적인 로딩없이 자유롭게 캐릭터가 여기저기를 돌아다닐 수 있게 되면서
오픈월드 게임이라는 새로운 장르 아닌 장르가 생기게 됩니다.
이런 대표적인 장르의 게임이 바로 폴아웃 시리즈와 GTA 시리즈입니다. 디아블로는 여기에 포함되지 않습니다.