AUTOMATON 是一个全球性的游戏媒体,现已推出中文版、日文版、英文版网站

automaton Japan

automaton English

首页 » 所有文章 » 文章分类 » 海外 » 揭秘内存仅32MB的PS2主机如何运行开放世界游戏《GTA3》

揭秘内存仅32MB的PS2主机如何运行开放世界游戏《GTA3》

游戏开发者Mark Brown分析PS2主机如何用32MB内存实现开放世界游戏《GTA3》的完美运行。

Avatar photo Takahara

一位游戏开发者Mark Brown在分析《GTA3》的源代码后发现,游戏中光城市规模的总量约为130MB。然而当时的PS2内存只有32MB,这部分容量还要分配给动画、AI、物理运算等。那么在有限的内存下是如何实现这一点的?通过他的分析表示,当时开发团队采用了一种“流式加载”系统,通过将城市分割为数千个小区块,只加载玩家周围的数据,随着玩家移动,动态加载前进的数据,同时悄悄删除已经过的身后的数据。

另外为了缩短PS2的磁盘读取时间,相同区域的数据在光盘上被物理上放置在相近的位置。而且,像树木、路灯这样频繁使用的物体,为了避免读头反复移动,其数据被复制并写入光盘上的多个位置。为了即使数据加载跟不上时也能防止世界消失的极端情况,最终手段是对玩家的移动速度本身进行限制。例如,为车辆设置最高速度上限、在特定区域暗中增加空气阻力、或在长直道路中央放置建筑物迫使玩家减速——游戏设计本身就是为了适应技术限制而进行调整的。

此外,只加载必要数据的方式会导致远处景物突然出现在眼前的“弹出现象”。为了防止这一点,游戏引入了以下机制:远处的建筑物、桥梁等大型结构先以容量较小的“低分辨率、低多边形模型”显示,随着玩家靠近,逐渐切换为原本的高品质模型。这样便抑制了“建筑物整块突然出现或消失”的不协调感。

游戏中当玩家坐上特定车辆时,街上会突然出现大量同款车辆,是因为内存中最多只加载8种车辆,这也是节省内存手段的结果。总之《GTA3》的这套技术后来成为开放世界游戏的标准做法。回想起当年这款大型开放世界游戏,其舞台自由城的城市规模在当时也算是几乎史无前例。

热门文章精彩视频热点采访