IT之家 5 月 17 日消息,YouTube 博主 Game Maker's Toolkit 本周(5 月 11 日)發(fā)布視頻,深入分析 R 星當(dāng)年如何將《GTA3》裝進(jìn)僅有 32MB 內(nèi)存的 PS2 游戲機(jī)。
![]()
作為參考,《GTA3》發(fā)售于 2001 年,是《GTA》系列 3D 世界觀的開山之作,憑借革命性的自由玩法,為現(xiàn)代開放世界游戲樹立標(biāo)桿。
而 PS2 游戲機(jī)的硬件規(guī)格并不算豪華,它雖然擁有容量至少 4.7GB 的 DVD 光驅(qū),但光驅(qū)讀取速度僅有 5MB/s,完全無法即時(shí)加載資源。內(nèi)存的狀況也不算寬裕,盡管總線帶寬最高可達(dá) 3.2GB/s,但容量只有可憐的 32MB。
IT之家援引博主觀點(diǎn),R 星在這極其有限的硬件中成功塞入了寬約 4 公里的開放世界,其中的自由市擁有波特蘭、斯唐頓島、海岸之谷三個(gè)可探索區(qū)域,還帶有大量 NPC 行人。
博主首先表示,傳統(tǒng)游戲一般會(huì)進(jìn)入某個(gè)區(qū)域時(shí),將所有模型、紋理、動(dòng)畫、音效等傳輸?shù)絻?nèi)存,當(dāng)玩家走到下一個(gè)區(qū)域時(shí)觸發(fā)加載動(dòng)畫,并將先前的區(qū)域從內(nèi)存擦除并加載新區(qū)域。
但這種策略并不適用于《GTA3》,因?yàn)樵撚螒虿]有獨(dú)立的區(qū)域,也沒有墻壁或門分隔各個(gè)區(qū)塊,玩家可以自由地任意探索自由市,整個(gè)波特蘭的文件就達(dá)到 40-50MB,完全超出 32MB。
隨后博主開始研究《GTA3》的源代碼,改寫部分程序并重新編譯出了一個(gè)新的游戲執(zhí)行文件,成功揭示了 R 星的優(yōu)化秘訣。
具體來說,R 星并沒有把整個(gè)自由市都塞進(jìn)內(nèi)存,而是將自由市化作一個(gè)棋盤切成數(shù)千個(gè)網(wǎng)格,玩家走到哪里,游戲就只顯示視覺范圍內(nèi)的模型、人物、資產(chǎn)。系統(tǒng)會(huì)悄悄在你前方構(gòu)建世界,同時(shí)悄悄刪除身后走過的世界。
![]()
不過,如果《GTA3》只有這種流式傳輸機(jī)制遠(yuǎn)遠(yuǎn)不夠,因?yàn)檫@種系統(tǒng)只能保證內(nèi)存不會(huì)溢出,而畫面遠(yuǎn)處的建筑物則會(huì)不斷閃來閃去。
![]()
為此,R 星建立了一套扇區(qū)檢查系統(tǒng),游戲會(huì)自動(dòng)檢查玩家當(dāng)前區(qū)塊視野內(nèi)的模型:離玩家近的區(qū)域會(huì)被詳細(xì)渲染,而遠(yuǎn)處的地方只會(huì)渲染高樓、橋梁、起重機(jī)等看起來明顯的物體。而且游戲內(nèi)部含有多個(gè)精度的模型,玩家靠近時(shí)可以使用高精度版本,遠(yuǎn)離時(shí)則使用低精度版本,節(jié)省內(nèi)存開銷。
![]()
總的來說,R 星當(dāng)年用了多種手段,讓《GTA3》能夠呈現(xiàn)在 PS2。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.