您在這裡

在 2D 的《Hyper Light Drifter》中運用 3D 遊戲關卡的設計技巧

1 篇文章 / 0 新
在 2D 的《Hyper Light Drifter》中運用 3D 遊戲關卡的設計技巧

原演講標題:Applying 3D Level Design Skills to the 2D World of Hyper Light Drifter
YouTube 影片:https://www.youtube.com/watch?v=LFsMenc5Q8I
講者網站:http://www.wertle.com/

在 2017 年一場 GDC 演講中,講者 Lisa Brown 介紹了她在參與《Hyper Light Drifter》專案時,如何把 3D 關卡設計技巧運用在 2D 世界上。在那之前,她曾任職於 Insomniac Games 作為遊戲設計師,因此將會談到她的經驗,是如何從《全面對抗 3》和《落日飆神》這樣的 3A 級動作射擊遊戲,轉變到《Hyper Light Drifter》這樣的上帝視角 2D 動作遊戲上,以及哪些設計流程和原則可以直接從 3D 挪用到 2D。(本演講轉錄經講者本人同意)

演講內容會著重在動作戰鬥遊戲,同時,演講內容也會展示幾張《Hyper Light Drifter》的地圖,因此對劇透有疑慮的人還請留意。Lisa 強調,她展示的所有遊戲內關卡,都是和不同團隊成員經歷過很多次合作協調的成果,尤其是在後期調整階段更是如此。

※ ※ ※

2015 年春季,Lisa 剛離開 Insomniac 並開始獨立開發,而 Heart Machine 也大概是在那時連絡上,提到他們當時在開發獨立動作 RPG《Hyper Light Drifter》,需要有人協助關卡設計。講者自認對關卡設計的知識僅限於大型 3D 遊戲,對 2D 遊戲完全沒有概念,不知道過去經驗能不能派上用場。所以講者笑說「我當然很樂意幫你們設計關卡!」

結果在一開始的對方給的關卡設計測驗上,馬上就碰到幾個難題。《Hyper Light Drifter》的 2D 攝影機是有點斜向的半頂視視點,講者因為太不熟 2D 關卡設計,乾脆使用 Google SketchUp 做簡易 3D 場景,再透過改變攝影機角度來在 3D 跟半頂視間做對比。用這樣有點湊合的方式上手之後,Lisa 做出了自己和對方都還算滿意的關卡,便正式加入了《Hyper Light Drifter》團隊。

不過,她還是擔心已經習以為常的 3D 關卡設計技巧,沒辦法直接轉換應用。例如,在 3D 遊戲中,場景除了長、寬之外還有深度(Z 軸),攝影機呈現場景縱深再自然不過,尤其是利用遠方的地標,來幫助玩家在廣大的空間找到方向;但在頂視的遊戲中,地標設計方式完全不同。

而且常見的 3D 戰鬥空間的設計,主要都是從玩家角色為原點向前看的錐形範圍來考量,所以關於建立戰場前線,或是避免玩家視野死角的技巧,在 2D 關卡設計中手法並不相同。

她也常利用 3D 世界的垂直空間來豐富關卡的玩法,但《Hyper Light Drifter》的引擎在這方面有所限制,玩家角色只能在場景物件的上或下方,但不能在上與下方都有物件(玩家夾在中間,等於要有三層深度),因此測試時的某些潛行繞路的設計,也因此無法實行。

所幸,當實際開始設計關卡後,Lisa 發現還是有很多 3D 的技巧是可以用在 2D 上的。講者後續把內容區分為三大段落:

  1. 關卡的初步建構流程
  2. 玩家的防衛和生存本能
  3. 利用空間來控制戰鬥的節奏

 

※ ※ ※

關卡的初步建構流程

講者提到,她認識的很多設計師在建立關卡時,通常會用減法雕塑來進行,也就是先做出一個大概的雛形,然後再回去慢慢雕細節。但她自己覺得除了用來看整體關卡粗略輪廓之外,她不傾向使用這方法。

相反的,設計師可以從基本「度量」下手開始建構關卡。「度量」的概念就是,走廊的最小寬度要多少,敵人才可以穿越,或是跳躍的高度、跳躍距離這些參數。有了這些已知資訊,在從頭開始設計一個新關卡時,就能以它們為基準來擺放物件。從這些物件一步步向外擴展,整體關卡就會漸漸成形。

講者以《落日飆神》為例,這是一款快節奏的開放世界 3D 射擊遊戲,主打特色是能利用卡桿、踩牆和彈跳來移動。但最一開始,角色的移動動作跟戰鬥動作其實是分開的,就只是個傳統 3D 射擊遊戲。過沒多久,設計走向改成了要把這兩者混合在一起,於是所有設計師都被指派製作空間的原型,想辦法找出遊戲的手感以及對關卡設計的影響。

當時 Lisa 所製作的原型是一個類似美食街的區域,粗略的發想是具有螺旋結構與多重高度差的關卡,而且要能用在多人遊戲。那這關卡是如何利用度量為基礎,一步步建構出來的呢?

 

以能幫助玩家移動的物件作為起點開始擺設,例如可以用來彈跳的棚子。以此為起點,在彈跳的距離極限已知的條件下,同時也為了提供下一步的移動更多選擇,所以在圖中的圓圈範圍內,擺放了數個可供玩家接續彈跳的棚子。當然,各自棚子間的距離,也必須確認是敵人可以通過的寬度。

 

然後就能從第二個起跳點開始依樣畫葫蘆。不過,如講者一開始期望的,希望場景有高度差,所以搭配擺放了制式高度的階梯,而再下一步的移動選擇便放在階梯附近。如此既往,就會建構出由眾多移動要素所組成的分岔路徑。

這與圖論中的樹狀結構走訪有點類似,透過各種小節點的連結來塑造出整個空間,而非從大片的基本形狀開始雕刻。

回到《Hyper Light Drifter》,Lisa 也使用類似的度量為主的流程,快速地為該遊戲建好她參與的第一個房間。當時主要在進行大地圖東部,以水為主的那區的設計。開發團隊當時已經正在製作一個線性且緊湊的地下戰鬥空間,所以團隊希望講者在新區域設計有所不同,必須是一個有多重路徑的大房間,而這房間會主打一個全新的敵人。

這房間被講者稱為「超巨大實驗室」,完成的樣貌如圖所示。相比玩家畫面一次能呈現的範圍,整張地圖要比那還大得多。

但在關卡設計成這樣之前,也是從很簡單的狀態開始的,如看似簡陋的草稿上可見,略可看出她想要怎樣連結各個空間。這也是她第一次將前公司的 3D 關卡設計經驗融入到 2D 關卡之中的過程。

Lisa 看著這塊只有模糊概念的空曠區域,她很快發現自己又回到在做《落日飆神》原型時使用的流程了。也就是利用遊戲中已經定義的度量距離,擺放不同物件,並看它們如何串接起來。

這些範例的主要度量是主角的衝刺距離,例如玩家可以跨越的最大間隔;被寫死的固定階梯尺寸;玩家的視埠大小等等。這些就是來判斷垂直空間,跟建構關卡限制時的重要參數。

 

 

和《落日飆神》的原型一樣,先用視埠的範圍來看每一塊畫面有多大,分別建構各個部分,然後漸漸連結出整體的樣貌。然後,在規劃每個略等同視埠大小的分區時,先把主角擺在地圖上的一個基礎位置,計算他的最遠衝刺距離的落點,繼續分支下去,就能快速開始疊代房間的設計。

這是整個關卡設計隨時間變化的樣子,它經歷了幾次疊代,主要是為了因應在這邊主打的敵人有設計修改、或危險地形的機制調整而改動,但最初用來連結空間的架構,仍然存在於最終版本裡。

講者說,雖然這可能是蠻針對她個人的設計方式,但這些空間架構的流程算是蠻有效地轉移過去了,即使 2D 和 3D 空間設計之間有很大的不同。

 

※ ※ ※

玩家的防衛和生存本能

第二個能直接挪用的概念是,利用玩家的防衛和生存本能來塑造關卡。Lisa 還在 Insomniac 工作時,遊戲總監 Drew Murray 曾經對她說:「對射擊遊戲的關卡設計來說,玩家的防禦能力比攻擊能力重要多了。」,講者表示她還是菜鳥時並沒有從這個角度思考過。玩家如何生存以及對生存有何感受,將直接影響你該如何打造關卡,甚至有時候比敵人或武器設計還來得更重要。譬如:遊戲有回血系統嗎?有明確的掩體系統嗎?

簡單來說,當玩家快死掉的時候,你希望他們運用什麼機制?這對設計師如何塑造空間有非常大的影響。《落日飆神》特別的點在於「越移動就越安全」,玩家透過四處移動和利用最快的速度,穿過這些交相錯的物件來生存。結果就是在關卡設計時,不需要太多傳統第三人稱射擊遊戲用來讓玩家躲起來的地方。

講者提到,《全面對抗3》和《Hyper Light Drifter》的防衛機制滿相像的:兩者都沒有自動回血,而補充血量的方式風險又很大。像是在危急狀況下衝去撿東西,或是在《Hyper Light Drifter》中用庫存的補血針,而且這兩個世界都是刻意做出很危險的感覺。所以很多關卡元素,都是為了達到類似效果去設計的。

Lisa 強調,這部分的術語,很多都是引用自 Christopher Totten 撰寫的《An Architectural Approach To Level Design》。這本書很棒的地方在於,它把大部分的關卡設計原則都歸納得很好,而且能適用於許多不同遊戲類型。講者指出書中「透過生存本能進行有情緒的關卡設計」章節,將她過去自身透過直覺和經驗做的事,都訂好了專有名詞。

該章節中提到很關鍵的兩個概念,就是「探勘空間(Prospect)」和「避難空間(Refuge)」這兩個概念。簡單說,探勘空間就是開闊且會受到攻擊的地方;反之,則是能躲起來的安全洞窟。這種形式常出現在動作遊戲裡,玩家要從安全的地方跑到危險的地方,然後抵達遠處另一個安全的地方。這些原則可以運用在不管是以 3D 或 2D 呈現的遊戲當中,而訂立專有名詞讓人可以更自然地理解關卡設計的概念。

在《全面對抗3》中,危險區和安全區切換得很頻繁,玩家會很常在場景的邊邊角角找掩護,安全的角落與高大開闊的空間互相映照。這就是很常見的探勘和避難空間的運用,哪裡安全、哪裡危險的感受差異會非常明顯。

這邊還要特別指出的是,相互連接的空間對比之下,可以創造出完全不同的感受。譬如玩家在爬過天花板高度低且狹窄的通風管,行動方式受到很多限制時,這並不會傳達一種安全的感受,玩家很容易想像萬一通風管內發生戰鬥,那會變得格外危險;

但如果這個通風管緊鄰著開放式的戰鬥空間,而且你位於高處,那你相對會非常有安全感,敵人不知道你的存在,且你的視點對擬定戰術來說很有利。當然,戰鬥開始後的通風管口就再也不安全了,玩家通常也會被迫移動到探勘空間去。

Lisa 在為《Hyper Light Drifter》設計戰鬥空間時,也用了同樣的生存本能原則。雖然這方法在 3D 和 2D 遊戲時差異很大,例如,沒有天花板高度這種工具來區別探勘和避難空間,但她也發現要創造讓玩家有被包覆的安全感並不困難。

譬如,在閃開大廳掉下來的巨石後,圖上圓圈處出現了一個小小的避難空間,在玩家必須回到外面對付角落的機槍前,提供一個短暫的安全時光。這區域是圍起來的,玩家必須花幾步路從下面繞出去,這樣就比能直接走出去,還更有安心的感覺。

在 2D 狀態下要讓玩家有被包覆的感受,比之 3D 相對簡單很多,需要建構的物件數也少很多。因為不需要和 3D 遊戲一樣,特別要去傳達視野外的地方是否安全,因為 3D 中通常需要用很誇飾的手法或運鏡,去呈現玩家無法直接看見的空間。在頂視視角時,完全不需要擔心這塊。

講者強調,這不只是單純跟運用遮蔽物有關。在圖中,畫面上是兩個相同的區域,右邊版本移除了一個柱子和畫面下方的小格子。因為敵人射程的關係,在邏輯上這兩張圖是同樣安全的,但實際感受卻有點不同。技術上來說沒有差異,但視覺上比較開放的版本讓人感覺離戰鬥空間更近一點,所以危險感覺會更強烈。在這種視角,不用做太多就能讓玩家有安全感。

就算 2D 和 3D 在實作時的技術不同,但建立探勘和避難空間,琢磨玩家的生存本能,這樣的概念在 2 種類型的遊戲都適用。

 

※ ※ ※

利用空間來控制戰鬥的節奏

Lisa 接下來介紹第三個她認為能挪用的概念,就是如何利用空間來控制戰鬥的節奏。在 3D 遊戲用來調整戰鬥步調的關卡設計策略,也能運用在 2D 遊戲上。其中最常用的方法,就是設法將每段戰鬥區隔開。

這是《全面對抗3》裡面的步調圖,這裡運用的區隔是用距離分隔的方式,分開整個關卡會出現的戰鬥,這樣就能奠定關卡的整體步調。當然,也可以將整個戰鬥區域用物體包圍起來,或是用時間的方式來做區隔,例如控制戰鬥中敵人波次發生的時間點,這樣就能在一場戰鬥中建立步調。

講者提出,實際上不需要封閉的戰鬥空間,或是設計線性戰鬥,就能將戰鬥空間隔離出來。《落日飆神》是個開放世界遊戲,遊戲裡有個很密集的大城市,但戰鬥空間還是很明顯的獨立空間,玩家可以從很多不同出入口進出。這個空間的外觀,看起來和周遭環境截然不同,很容易認出它是完全專門用來戰鬥的區域,而且遊戲裡有很多這種地方。當你經過時大概感覺得出來,這些封閉區域的氛圍和四周很不同,所以你離開時,也能清楚知道已經離開戰鬥區域了。

在《Hyper Light Drifter》中區隔戰鬥的其中一個方法,是透過鎖定攝影機。舉例來說,在大地圖南部區域有個要從上方進入的關卡,主要的戰鬥會把你帶到右方的戰鬥空間,而左邊有個秘密區域。攝影機在這邊被鎖在上圖中的紅色區塊中,這麼做是為了要防止玩家看到左邊的秘密,同時也能讓玩家專心在戰鬥上,讓這個時刻有種被分隔開來的感覺。

最後成果就像這樣,攝影機在水平方向被鎖住了,玩家進入後會感覺被封鎖在這個獨特的戰鬥情境裡。開發團隊在整個遊戲裡都用了這種攝影機技巧,最後變成非常重要的步調設定工具。

另一個常用來調整步調的空間方法,就是剝奪避難空間,增加緊張感,例如把敵人放到照理說應該是安全的封閉區域裡。Lisa 舉例,在《Hyper Light Drifter》蠻常出現的做法就是陷阱式的競技場,玩家一走進這個區域,馬上就會被障礙物封住去路,然後就必須在沒有避難空間的狀況下不停戰鬥。而且還不需要設計太多種敵人組合,就能有效增加戰鬥緊張氣氛。

講者最後一個例子是上圖,玩家必須透過漂浮平台離開這個房間,四周沒有牆也沒有遮蔽物,且被迫在會移動的地面上和會飛的敵人作戰。因為這地方完全沒有任何避難空間,情境上最適合用來作為一個關卡中最後一部分的高難度橋段,將這段落的戰鬥節奏推向高點。

同樣的,雖然 2D 和 3D 在這方面實作方式會有差異,但利用空間去分配戰鬥的原則,在兩類遊戲中都能很自然地去運用。

Lisa 補充,其實還有很多 3D 的關卡設計原則,在設計 2D 關卡時能直接應用。同時她也再次推薦了《An Architectural Approach To Level Design》這本書,將很多常見的關卡設計手法都通用化,能應用在各種不同情境與需求上。

 

※ ※ ※

《Hyper Light Drifter》關卡設計過程舉例

最後講者舉出《Hyper Light Drifter》的一個房間從無到有的設計過程來說明,如何把每個原則和流程應用上去。上圖是位於大地圖北方區域要和邪教鳥人戰鬥的房間,圖片顯示了在開發過程中是如何演變的,讓大家能快速瀏覽這地圖在各個疊代中的變化。

她提到,在設計這個房間時,是有被賦予特定目標的。開發團隊想知道遊戲北方區域的敵人,最適合出現在哪種情境之下,並實驗各種不同的敵人組合。所以在這個範例中,講者特別著重在邪教鳥人的近距離高強度戰鬥,但也試了一下傷害較弱但能夠遠程攻擊的敵人。

這房間的編排盡量緊湊,而且一次只專注一個概念,所以不需要設計像前面提過的超巨大實驗室。在大概有了想要測試的目標後,先從度量開始進行,就和之前提過的其他關卡差不多。講者把畫面鎖在兩個主要區域上,並盡量讓房間看起來小而緊湊。同時,這樣角落空間會很適合用來藏秘密寶箱。

房間左下入口擺放了很多個平台,每個平台間隔都是最大衝刺距離,這樣能讓邊緣呈現危險懸崖的感覺。落井占據了第一塊畫面大部分的空間,剩下只有一兩隻敵人作為點綴,而主要戰鬥會發生在上方的第二塊畫面空間。Lisa 說,設計第一個版本時,非常著重在緊湊的戰鬥上,但即便如此,還是會讓玩家出現在安全區域,戰鬥可能是在分開來的平台,或是剛進關卡時玩家還看不到的右上方。

不過這樣房間起點的安全感似乎不夠,因此在團隊決定這個房間繼續往下製作時,下一步就是讓開場的避難空間變得更大,所以上圖的左下變成看起來像延伸出去的洞穴。

經歷幾次疊代後,她也讓碰到第一個敵人之前的這個小區域,變得更封閉一些,讓玩家在前往開放空間前更有安全感。即使後來入口洞穴又更擴張了,還加了一些地板陷阱,但在前往開放空間前的小區域基本上保留了之前的那種包覆感。

現在要來談談右上方的主要戰鬥區,如何提高難度,並讓這邊成為整個房間最聚焦之處。當玩家一進入這個戰鬥區,攝影機就會被鎖住,讓玩家能專心在這場戰鬥上,並強調這場戰鬥會比剛才解決的那兩隻鳥人,還要緊張刺激,同時順便把房間最右下方的秘密區隱藏起來。同時,玩家也會失去所有往避難區的退路,因為戰鬥一開始就會有牆升起來。

實際上看起來像上圖這樣,在這個危險的場景中,玩家動作會被迫要更加敏銳。

在關卡稍早的版本中,和畫面最右方被落井隔開的敵人之間沒有阻擋,所以還要閃躲拿槍的敵人遠距離攻擊,結果就是要同時應付的事太多了,Lisa 感覺設計得有點草率。所以後來把那一塊隔離起來,當做另一波戰鬥的節奏。

玩家能看到接下來還有更多戰鬥,但與主戰場有所區隔分隔,中途再把它打開。這很成功地在戰鬥的高峰後舒緩緊張感,雖然玩家要多應付一個遠距離的敵人,但強度不會過高。

講者希望這樣帶過一遍後,能讓大家更瞭解她們是怎樣應用這些原則,許多原則是緊緊相依的。重點是,講者認知到在 3D 關卡設計所訓練出來的經驗,很多也適用於 2D 的工作流程。

 

結語 & 問答

Lisa 表示,在接下這個任務前所擔心的事,其實都沒有發生,雖然有很多 3D 方法不能直接運用過來,像是和 Z 軸視角有關的東西,或是對空間方位的概念需要轉換,或不能利用較矮的天花板高度,來讓玩家有封閉感之類的。但不少關卡設計的通用原則,在 2D 3D 兩種情境下都很適用。她最後又再推薦了一次《An Architectural Approach To Level Design》這本書,並強調本場演講直接提及的這幾項,只是她經驗中少部分的舉例。

講者所下的結語是,很多專門為特定類型的遊戲進行關卡設計的設計師,當碰到要為不同的遊戲類型進行設計時,千萬不要害怕,因為你的技能非常有機會能無痛移轉,只需要相信自己,並掌握過去做事的大原則,而不是在特定的實作方式上鑽牛角尖。

Q:在你開始為這個專案的敵人設計關卡時,敵人的設定都已經完成了嗎?還是在過程中也是經歷了一些疊代?
A:並沒有完全定案,但大部分算是完成了。實際上,在設計北方區域房間時,敵人原型已經設計出來了,但開發團隊想要知道的是可以怎樣運用這些敵人。最後用了好幾種敵人,並試了不同的組合結果,然後再砍掉幾個的敵人種類,並測試要怎麼讓一種敵人可以同時呈現多種效果。所以當時的敵人設定都有雛形了,但一切都還在疊代中。因為在關卡中測試過敵人後,才會知道某些敵人打起來不怎麼有趣,最好移除掉,或是用其他有同樣功能的敵人來取代。

Q:在用灰盒法設計 3D 關卡時,很常遇到把實際的美素素材放入關卡後,發現實際上不適合的情況,需要馬上重新製作或調整。但在 2D 時,會有類似這樣的情況出現嗎?
A:針對這個專案沒有發生,但一部份的原因是,當你在一個小團隊時,成員合作都很緊密,而且原本團隊有建立好很完整的度量了。像是圖像大小、碰撞外框大小,這些是不能改變的,但可以把美術圖改得更漂亮。之後也還有很多時間去疊代和改善視覺效果,其實沒有怎麼干擾到關卡設計。但不確定這是 2D 遊戲的關係,還是這個團隊的流程的關係。

Q:在 3D 關卡設計,物件擺放、光線和視覺引導,能引導玩家往目標前進並防止他們迷路,當轉移到 2D 時,很好奇有多少概念能直接挪用,以及哪些要保留原樣?
A:答案是可以。如何利用獎勵讓玩家感到好奇且有興趣,只需因應視角差異而採取的不同方式。舉例來說,有一個關卡有很多的障礙物,玩家能夠看到出口,然後在上面不同層的地方看到有個想要取得的重要物品。玩家可以看到目標,但他也會知道要去畫面外的地方探索,知道大致要往哪個方向走。這個作用和地標類似,但玩家解讀的方式會有一點不同。

Q:有時候美術會打斷關卡設計工作,因為他們一方面擔心視覺呈現,一方面也不太在乎你的灰盒關卡。講者在和美術合作時,是如何處理這種狀況的?當開始建立關卡基礎架構時,會想要環境美術設計師的意見,並瞭解他們對關卡的感受和想法嗎?
A:這會依照專案和公司的不同而有很大的不同。在 Insomniac 參與線性遊戲開發時,關卡設計師都和環境美術都緊密合作。講者還記得拿著地圖的草圖去找環境美術設計師,「我有這些想法,你覺得會有問題嗎?」然後他就會把這一區的問題畫出來「要不然這樣做如何?」在整個流程中能緊密的一對一合作很有幫助。

《落日飆神》有點不一樣,因為它是開放世界,當時是由一個主要設計師負責整個世界的移動規劃,而那些主環境美術設計師們的腦袋,就像是個共生體一樣,一起建立這個世界。他們更像是用模組化的物件來架構。當然,設計師擁有自己專門負責的領域,然後從一開始就頻繁和相關負責的美術討論這個領域。像之前說的,《Hyper Light Drifter》的團隊很小,所以溝通是很自然的事,每天下班前講者會特別標記一些東西,然後邀請大家來玩,主美術可能會說「這東西不是很好,儘量避免用鋸齒狀的角落」他有自己的一套視覺標準,能夠讓東西盡可能看起來最順眼,以及要避免什麼東西,這些在講者進入團隊之前其實都已經建立好了,這點也幫助很大。

=======================================================