No Man’s Sky:算法生成的龐大世界
一個小型的遊戲開發團隊,如何創造無限的虛擬世界?答案是,把創造世界的任務交給計算機。通過過程生成(procedural generation)技術,遊戲中的景物可以隨著玩家的探索而自動生成。作為近年來最具野心的遊戲之一,《No Man's Sky》以其“無限空間”和“超高自由度”為賣點,而開發遊戲的Helle Games 僅有10 名員工。他們使用的正是過程生成技術。不過,相比其它遊戲來說,這款遊戲中要復雜許多。
“我們嘗試去做人們從未做過的事情,” 遊戲的開發者之一Sean Murray 在接受Technologyreview 網站採訪的時候說,“讓你飛行到一個星球上,就像真正的星球那麼大,包含了生命、生態、湖水、洞穴、瀑布和峽谷,然後穿越平流層,飛向太空。從來沒有遊戲做到過。這是一個巨大的挑戰。”
No Man's Sky 有數以百萬計的星球,並且都呈現出不同的形態。星球隨著玩家的發現而生成,遵循星系的規則,有自然界風化的影響。生活在星球上的各種生物會繁殖,並且隨著時間發展產生變異。
如此龐大的世界,自然會帶來許多技術上的挑戰。首先是如何進行測試。開發團隊使用了自動機器人,讓它們去探索世界,然後拍攝照片,反饋給團隊。另外,為了避免玩家陷入徹底孤獨,遊戲開始的時候,新玩家會處於同一個星系之中,最初任務就是向星系中心進發。在接下來的時間裡,玩家們會相遇、戰鬥、貿易、開礦、探索等等。 “我們不知道人們最終會工作、集合還是分散開來,” Murray 說,“我知道,玩家不希望聽到的是,我們也不知道會發生什麼事情,但是,這正是讓我們興奮的地方:遊戲是一個龐大的實驗。”
最初,遊戲中的世界是完全隨機生成的,但是這並不能帶來好的遊戲體驗。 “只有1% 的時間裡,它能夠創造一個自然、有趣和悅目的世界,其它時間裡,它是一團糟。某些情況下,天空、水面和地面是同一種顏色。沒法玩,” Murray 說。於是,他們開始確定一些簡單的規則,使遊戲的世界不再那麼隨機和雜亂,同時又保持了不可預測性。
在過去,要創造一個龐大的虛擬世界,可能需要幾百人的團隊,而如今,隨著計算機性能的強大,小型團隊也能夠做到了。 Hello Games 採用了一種創造遊戲的全新方式。
“從整體上觀察遊戲開發,我感覺創造內容的花費是真正的問題,” 他說,“藝術家們要創造一個世界,需要耗費大量的金錢,這迫使許多人不再做出冒險性的創新。同樣,你不可能讓300 人去實驗性地工作。通常來說,遊戲開發就像是建造摩天大樓。大樓有形式和定義,但最終來說,它和周邊的建築是非常相像的。在大型倉庫裡,與數百人一起開發遊戲,並非我喜歡的事情。遊戲開發不應是那個樣子——如今它也不需要是那樣的了。”
圖片來自meristation
資料來源:ifanr