PS2에 도시를 담은 비결!
PS2 메모리 제약 극복: 32MB RAM에 4.7GB 도시를 담기 위한 혁신적인 기술 소개
스트리밍 기술(Streaming): 플레이어 주변의 에셋만 로드하고 나머지는 언로드하는 방식으로 메모리 효율성 극대화
LOD(Level of Detail) 시스템: 멀리 있는 오브젝트는 단순화된 모델과 텍스처로 렌더링하여 메모리 사용량 절감
최적화된 데이터 구조: 동일한 크기의 에셋을 반복 사용하고, 지형 데이터를 효율적으로 관리하여 메모리 부담 감소
게임플레이 제약: 메모리 한계로 인해 차량 속도 제한, 비행 불가 등 불가피했던 기술적 타협점 설명
메모리 제약과 스트리밍의 필요성
PS2의 32MB 메인 메모리(RAM)와 4.7GB DVD 용량 간의 극명한 차이는 거대한 오픈 월드 구현의 가장 큰 난관이었습니다. 발표자는 DVD의 느린 로딩 속도(5-6MB/s)와 메모리 용량 부족을 지적하며, 플레이어 주변의 에셋만 실시간으로 로드하고 필요 없는 에셋은 즉시 언로드하는 스트리밍 기술(Streaming)이 필수적이었음을 강조합니다. 이는 4km x 4km 규모의 도시를 32MB 메모리에 담기 위한 핵심 전략이었습니다.
LOD 시스템과 프록시 오브젝트
도시의 방대한 규모를 고려할 때, 모든 오브젝트를 고품질로 유지하는 것은 불가능했습니다. 영상에서는 LOD(Level of Detail) 시스템을 통해 원거리의 건물, 다리, 차량 등은 단순화된 모델(Low-poly proxy)과 저해상도 텍스처로 렌더링하여 메모리를 절약했다고 설명합니다. 플레이어가 가까이 다가갈 때만 고품질 에셋으로 전환되는 방식으로, 시각적 밀도를 유지하면서도 메모리 사용량을 획기적으로 절감했습니다.
에셋 중복 및 최적화 기법
메모리 부족 문제를 해결하기 위해 락스타는 에셋 중복(Asset Duplication)과 데이터 구조 최적화에 집중했습니다. 예를 들어, 수많은 건물, 나무, 가로등 등은 동일한 모델과 텍스처를 공유하도록 설계되었습니다. 특히, 13MB의 도시 데이터는 32MB 메모리 풀에 맞추기 위해 에셋 크기를 2KB, 4KB 단위로 엄격하게 관리하고, 중복된 에셋을 효율적으로 재사용하는 기법을 적용했습니다. 이는 메모리 단편화(Memory Fragmentation)를 최소화하는 데 기여했습니다.
스트리밍의 한계와 게임플레이 제약
이러한 스트리밍 및 LOD 시스템은 놀라운 성과를 거두었지만, 몇 가지 게임플레이 제약을 야기했습니다. 영상에서는 차량 속도 제한, 비행 불가, 도시 구역 간 로딩 화면 등이 메모리 한계와 직접적인 관련이 있음을 설명합니다. 특히, 플레이어가 너무 빠르게 이동하면 스트리밍이 따라가지 못해 오브젝트가 갑자기 나타나거나 사라지는 팝인(Pop-in) 현상이 발생할 수 있어, 이를 방지하기 위한 속도 제한이 불가피했습니다.
9/11 테러와 게임 콘텐츠 수정
GTA III 출시 직전 발생한 9/11 테러는 게임 콘텐츠에 대한 중요한 수정을 요구했습니다. 발표자는 락스타가 테러리즘 관련 미션 삭제, 경찰차 및 소방차 모델 수정, 뉴욕시 랜드마크(예: 자유의 여신상)의 외형 변경 등 민감한 부분을 신속하게 조정한 과정을 언급합니다. 이는 당시의 사회적 분위기를 고려한 콘텐츠 윤리 및 책임감 있는 개발의 사례로 볼 수 있습니다.