美利堅:遊戲製作教父 第435章
如何讓人上癮到死去活來的?
對這個問題的解答,這個世界上有兩類人最為擅長。
一類是化學家。
而另一類————就是遊戲製作人。
「這么小?」
看到林立新在紙上手繪的大致示範,山姆愣了愣。
憑現在GAMENOVA的硬體水平,早就已經能放開手腳做一些很誇張的大地圖了。
加上很多年前他們就已經搞定了的無縫大地圖技術,想要做一個規模誇張的世界並不是什麼難事。
尤其是一個黑幫火併」題材的作品。
顯然是人越多越熱鬧越好。
就譬如做出一整個完整的夜總會地圖,像《MJ的月球漫步》那樣,可以自由地活動。
這樣不是更好嗎?
然而林立新顯然是有截然不同的想法。
根據他繪製的幾個示意圖,不難看出這整個關卡只有幾個不大點兒的小房間構成。
但林立新這麼做,定然有他的道理。
「對,就這么小,我們要確保當玩家進入遊戲的第一時間,關卡就已經被完整加載到內存里了9
0
他解釋道,目光掃過自己在紙上畫的幾個敵人示意標誌,簡單估算了一下開支,「除此之外————我們還需要想辦法實現一個非常麻煩的新技術。不,不對,應該說是倒車回去用老技術。」
林立新想了想,在紙上寫下一行字。
【流式加載】
隨後,他又用筆直接將這行字給劃掉。
看到他這麼做,山姆眨了眨眼,大概明白了林立新的意思。
「你想要棄用流式加載?」
所謂流式加載,其實已經不是什麼新鮮技術了。
在內存和其他機能都非常有限的情況下,遊戲不可能一口氣把地圖完整地加載到內存里。
如果解決不了這個問題,遊戲的世界便終究有一個上限。
只能靠堆硬體去不斷拔高這個閾值。
但流式加載的出現完美解決了這個問題。
它不像是當初他們在《塞爾達傳說》里用的那種切換場景的技術。
真要說它的完美應用案例,其實是林立新給世嘉準備的那款看家作品一《刺蝟索尼克》。
在索尼克那種超高速移動的環境下,靠流式加載不斷動態地載入前方的新地圖便成了必要的手段。
棄用流式加載,意味著林立新主動放棄了大地圖的可能性。
付出了如此大的代價,自然也不會一無所獲。
想到這兒,山姆忽然眼神一亮,猜到了林立新的想法。
「無縫加載!」
這么小的一張地圖,完全足以在玩家不知不覺間悄然加載完畢。
整個地圖根本不需要讀盤,從第一時間便已經緩存在了內存里。
這樣做的好處自然就是————沒有黑屏!
不管是開始新遊戲還是到達新場景,都不會有明顯的加載感。
「嘿,就是這麼回事兒。」
林立新打了個響指,「不過嘛————除了加載之外,它還有另一個至關重要的能耐。」
「是什麼?」
「無縫重置。」
林立新緩緩吐出幾個字兒。
「無縫重置?」
「是的,你還記得《龍穴歷險記》不?」
「當然,我剛才還玩了一局。」
山姆點點頭。
作為這次對標的前輩,《龍穴歷險記》的取材工作自然也已經早早地就被布置了下去。
但是除了山姆這個老ass之外,其他幾人都被虐的死去活來的。
也就卡馬克這種年輕的槍男能玩的了這種純考驗反射神經的遊戲。
「《龍穴歷險記》雖然困難,但它卻能讓玩家一直玩下去,你覺得是為什麼?」
「唔————」
山姆認真思考著,一個個地回想公司里幾個風格截然不同的玩家的遊玩體驗。
半晌,他找到了一個相對令人信服的答案:「硬要說的話,就是勾子吧?總覺得下次一定能過的心理————以及關卡設計非常迷你,每個節點只有一個QTE,失敗了只會在當前節點重來。」
「不賴。」
林立新滿意地稱讚了一句。
《龍穴歷險記》作為一款雖然滿是噁心的QTE,卻能讓人一旦開始就難以停下的神奇作品,它的身上實在有太多值得學習的東西了。
QTE快速反應事件既是弱點,又是優點。
極短的反應時間窗口,稍有不慎就直接暴斃,但卻能在當前節點迅速重新來過,在極短的重試時間內,每一次失敗都能迅速得到反饋,肉眼可見自己的成長。
這才是他真正的含金量所在。
「我們要在《邁阿密熱線》里重現這套機制。」
經過林立新的解釋,山姆總算是徹底明白了過來他要做什麼。
一路走到現在,山姆雖然在GAMENOVA內部總是表現得差一口氣,但若是丟到外面隨便一個遊戲公司,那都是要被供起來的首席級別。
「心流?」
「沒錯。」
想要實現心流,連貫絕對是最不可或缺的東西。
「不過說起來容易,做起來可不容易。」
林立新無奈嘆了口氣。
80年代————哦不對,是90年代的硬體還是太贏弱了。
別看《邁阿密熱線》其實是一部俯視角的2D遊戲,但它那種超級快節奏的體驗和完全無縫的連貫性,根本不是現在處理器的頻率能做得到的。
哪怕是強如ATHENA,她也就只有80MHz的頻率而已。
山姆顯然也很清楚這一點,他摩挲著下巴,開口講出這套機制面對的最大問題:「想要重置整個關卡,我們需要把門、敵人、敵人AI、可交互物體等一切物件都銷毀,再重新實例化,還得嘗試還原玩家的狀態把他送回初始位置————」
哪怕是如此小的地圖,在這麼多的工作量下,憑藉有限的處理器頻率也很難做得到。
《龍穴歷險記》為什麼能做到?
那是因為《龍穴歷險記》里根本就沒有任何角色數據。
沒有位置信息、沒有場景、沒有物件。
它只是一段動畫視頻而已。
所謂重新來過,其實就是重播一次動畫片段。
畢竟不會有什麼區別, QTE還是那個QTE。
哪怕是真的即時重啟,需要管理的數據量也非常少。
「的確如此。」
林立新不置可否。
想解決這個問題,要麼是搞出更高速的內存,要麼就想辦法提升處理器頻率。
但前者需要搞出新架構,會導致現在的SDRAM體系加速崩潰,對美光的發展並不有利。
處理器頻率的提升,在短期內也很難有質的突破。
兩條看似走的通的路實際上都走不通。
更不用說卷硬體本身就是林立新非常不認可的路線。
合適才是最好的,夠用高於一切。
讓玩家承擔性能溢出的溢價,實在是吃相太難看了點。
「要是咱們用兩塊ATHENA呢?兩塊加起來總能更強一點吧。」
「不太行。」
林立新搖搖頭,「數據量是處理的過來的,問題在於速度,堆兩塊處理器解決不了這個問題————嗯?」
他的話說到一半,忽然愣了愣,旋即眼神一亮,「嘿!你別說,搞不好還真行!」
說罷,他也不跟山姆解釋,直接衝出辦公室來到馬克·塞尼跟前,已經被勾起好奇心的山姆緊隨其後。
這事兒他們還真得跟塞尼這個新任架構師聊聊。
「需要無縫加載和重置?如果是這樣的話,哪怕是兩顆ATHENA應該也不夠用的。」
塞尼搖搖頭,否定了這個提案。
問題跟林立新所述的一樣,速度是硬傷。
「別著急,《邁阿密熱線》是純粹的動作遊戲,RPG占比非常小,唯一的區別就是每關開始前選擇的面具。」
林立新解釋道。
「這我倒是知道,但是即便是這樣,地圖裡的其他數據也會————」
「不不不。」
林立新出聲打斷了他,擺了擺手,「我的意思是,我們沒有需要傳遞的————玩家數據,每一關都是獨立的。」
「?————?!」
塞尼忽然眼神一閃。
他的硬體知識雖然比不過傑拉德,但他在思路這一塊上絕對是獨領風騷。
只需要林立新這麼簡單一解釋,他就明白了過來。
「能行嗎?」
「我猜————應該可以,不過我需要先做個技術驗證。」
兩人相視點了點頭,一切盡在不言中。
在一旁聽著的山姆納悶地看著倆人。
「這是在打什麼啞謎?別賣關子了,跟我講講。」
林立新聳聳肩,這才開口解釋道:「第二顆ATHENA不是作為協處理器輔助處理信息,而是——————」
「備份!」
塞尼主動接過話茬,「我們不只是要兩顆ATHENA,還要兩套內存,在玩家遊玩的過程中,關卡已經被備份緩存在了另一組晶片內。」
這就像是把兩台街機的基板縫在了一起,只不過除了必要的獨立部分之外,其餘部分全都共用。
當玩家不慎死亡時,遊戲會第一時間切換到備份。
因為關卡本身就完全回滾,加上角色除了開局時選擇的面具外沒有任何差異的關係,即便是使用了一套完全獨立的備份,在玩家的視角看來也根本沒有任何違和感。
面向玩家編程。
不管過程是如何實現的,架構又有多麼屎山,只要最終呈現給玩家的效果符合預期,那它就是完美的解決方案!
而在當前層打完了需要切換到下一層的時候,事實上遊戲在玩家操控著角色走進樓梯通道的過程中,就已經開始向內存中預加載新地圖的數據,以及讓備份晶片開始工作了。
>