距初次於國內亮相已過去小半年,《鬼泣-巔峰之戰》透過高品質的IP還原度和酷炫的畫面表現一經推出便收穫了不錯的市場反響。
在今年9月25日舉行的北京國際遊戲創新大會(BIGC)的引擎專場中,雲暢遊戲技術負責人劉琛受邀分享了以《鬼泣-巔峰之戰》為例的高品質動作手遊開發歷程。
以下是遊戲陀螺整理的分享實錄(有刪減):
劉琛:大家好,我是來自雲暢遊戲的劉琛。《鬼泣-巔峰之戰》作為一款高品質的 3D 動作手遊,曾在今年4月份的蘋果春季新品釋出會上亮相,在今年6月份便在國內公測了。
這個專案區別於其他的市面上的動作手遊,主要有幾個亮點:
- 在移動端還原原作《鬼泣》的玩家體驗;
- 基於Unity我們去打造主機級3D的這樣一個視覺表現效果
- 區別於一般動作手遊,它打破跳躍的桎梏,在“Z軸戰鬥”上首次實現在移動端的落地;
- 基於跳躍的玩法,實現三維尺度上的複合空間場景。
接下來,我會分以下幾個部分來介紹以下我們在研發過程中的一些關鍵的製作方面:
01. 角色製作
首先第一部分是角色製作,為了還原主機端的一個基本的畫面的質感,我們在《鬼泣.巔峰之戰》中不斷的去最佳化頁面和建模。因此,在保證高幀率的流通前提下,我們進行大量深度的一些效果製作,比如說像一些材質、模型我們會按照PBR的流程去製作,然後針對頭髮、皮膚這些部位使用了一些特殊的處理效果和材質。
對於角色頭髮的製作方面,我們採用了兩個pass的渲染,為了體現原作中的柔順質感,同時還需要相容移動端的一些效能的限制,我們把頭髮分成了三個層次。
第一層為內層,用來防止穿模的,是一個相對固定的層次,貼圖是一個不透明的狀態;
第二層為外層,外層的狀態打造玩家角色的基礎外形,這樣需要還原角色設計,在這方面貼圖會比較豐富、層次也比較豐富;
第三層是修飾層,對外部加入修理的外形,增加細節,這樣可以體現玩家個性,或者說增加角色的生動感,透過三層這樣的結合我們最基本的把這樣一個鬼泣原著角色的一些魅力展現出來。
在角色的皮膚方面,我們在皮膚上使用了預積分皮膚次表面散射lut圖的sss效果。主要是在實現的效果上,我們儘量在色澤表達上偏向寫實硬朗的風格,一是為了還原鬼泣的原作,更偏向於暗黑哥特風;再者則是為了與我們市面上一些小清新或網紅臉的手遊做出區分。
除此之外,為了讓這個角色在融進場景的時候顯得更加立體生動,我們在場景製作過程中也提供了可控微調GI的面板。經過微調之後,在不同場景裡面的表現效果能達到玩家更多的資產和投入。
02. 動作製作
第二部分是我們的動作製作流程。首先就是鬼泣作為動作天尊CAPCOM的一個經典的IP,它對於這個動作的表現和要求是非常高的。這種表現不僅僅體現在華麗的動作設計和打擊感的配合,也體現在比較基礎的行走、跑、跳這些動作之間的融合和體驗上。
以其中一個主角維吉爾為例,他從靜止的待機到慢速移動的走到跑到加速跑,這些動作之間要有一個很流暢的融合和銜接,所以在數值上可能會體現出不同的速度,而在實際的製作中它也是不同的動作。
為了去達到這種流暢的移動效果,速度變化就會設定為漸變,然後再配合用BlendTree的設定,最終就會實現走、跑加上跳這樣一個動作流暢的變化,尤其在空中和地面之間的無縫轉換,就更能讓玩家體驗到原作的魅力。
另一方面是《鬼泣》原作裡角色的動作是複雜酷炫的,以主角但丁為例,它經常在移動的同時,還能使用槍械進行攻擊。
所以為了還原這種體驗,我們作為對於這個動作進行分層處理或者上下完全的分離。但丁的普通攻擊,是在有開槍展現的同時,也需要去接受玩家的移動操作的指令,可以進行走動。這種複雜的動作,我們把它的上半身進行了分層,上半身特殊的設計區域和下半身雙腿的移動區域的分層,然後對玩家的輸入進行接收反饋,再將其透過一些邏輯融合在一起,最終實現一套完整複雜動作行為的處理。
第三方面,是如何讓這款遊戲的動作體驗更加流暢,讓玩家感受到不僵硬。對於這點我們尤其重視玩家的心聲,所以我們制定了一套製作的標準。
我們把所有的動作資源分為基礎動作和行為動作。基礎動作我們會認為是人物的待機而轉向動,然後行為動作把它分成釋放技能收集跟產品互動這些動作。
對於基礎動作來說,任何動作的起點和終點都應該是待機的行為,這樣的話對待機就是有一個要求,就是不能有特別明顯的大的動作。除此之外,移動一定要有一個速度,然後不同移動之間的整體規格必須要一致,這樣的話可能處於一個比較好的生效,比如說規格、速度、長度,左腳還是右腳的移動,這些都要有一致的製作標準。
對於行為動作來說,又可以細分為主動和被動的動作。主動行為我們是根據自己主觀意願去進行的,比如釋放技能;被動行為是其他單位的控制,比如受擊等類似的行為,用途就是某一、兩個動作之間切換的一個融合的配置。
對於角色的行為還有表現,不管是主動還是被動,都有一個非常客觀的需求,就是反饋要及時。這對於動作遊戲來說非常關鍵,所以在進行切換配置的時候,為了動作反饋的及時性和流暢性,我們也縮短了行為融合的時間,大家能看到這個融合時間是比較短的,再附加邏輯上對動作的打斷以及對切換實際的控制,我們角色的攻擊和受擊就會更加的真實,同時也會反饋的更加及時。
03.關卡製作
接下來說一下鬼泣的關卡製作。對於一般市面上的MMO或者ARPG來說,其關卡的製作流程通常是去製作一個平面的設計圖,然後再有美術圖,後面就直接進入到模型製作了,然後再有底邊去拼場景,接著用策劃去搭建觀察流程並進行驗證。
但是對於鬼泣這樣的3D遊戲來說,這種簡單的觀察流程是沒有辦法標準的,所以我們在製作過程中也進行了多次的磨合,磨合出一套白膜製作的觀察流程。
首先有機械的關卡,這是基於三維尺度的,符合多種玩法的這樣一個符合空間的一個觀察流程。所以在手機端的話,我們也希望還原這一點,在機關、路線、刷外點、保箱點,我們都會有在3D層面的一個設計,這樣的話就有問題策劃美術需要互相配合,互相來回去驗證流程會非常多。
第一步策劃上,我們會先去進行一個白膜的搭建。這一點上有的團隊可能會覺得策劃學習這個板塊搭建的成本是比較高的,但是以我們實際的操作來看的話,大家學習和上手能力是不錯的,當然這也基於以前一個比較強大的編輯能力。策劃基於白膜搭建之後,會在百貨上去設計一些市場化,主業主要的路線和區域劃分出來,然後也可以繼續在辦公上搭建一些玩法去驗證它流程的設計。
到了第二步,美術在接觸到白膜之後,會進行一個稍微複雜的提升,將模板更精細化。把場景附加上一些燈光大氣這樣的一些環境,然後讓這個模型看起來更加真實,方便策劃進一步地驗證設計偏差。
在得到策劃確認後,原畫師才會介入,設計原畫的一些細節,同時模型開始進行粗貼的模型製作,再繼續搭建第三步的初步關卡。這時候的關卡已經初具模型,但還是欠缺很多細節,在這種情況下策劃需要進一步驗證,在這個基礎上去完善細節,完善流程,包括刷怪這些事情,以此來驗證是否有偏差,最終策劃確認之後,第四步才會進入模型的最終的資產化製作,完成之後這些模型才會逐步的被整合到這個場景中。
一般來說,最終資產都是製作過程中花費成本最高的地方。所以透過這樣一個流程,我們可以避免在這樣設計一個複雜的觀察的過程中,策劃和美術同學反覆的調整修改,導致很多的美術資源在製作的過程中被浪費掉的情況。
除此之外,在進入最終制作階段之前,我們也基本確定了所有模型的位置,所以我們就出現了頻率,這樣也能根據資源的優先順序去製作精細度,最終可以控制性能記憶體的消耗,另外一方面控制我們最終制度的成本。
同時,為了實現設計意圖,我們還需要有關卡流程的製作。觀察流程的編輯器內建了上百種觸發器、寶箱和刷怪各種各樣的行為。策劃透過這個編輯器,可以去排列組合出來實現觀察的流程,其中觀察包括有什麼有小怪,多種機關陷阱、空氣牆、可破壞物、寶箱、漂浮物等等,基本還原了原作中大部分的所擁有的元素。
這樣整個觀察流程就不再是那種枯燥的一波刷怪,而是有戰鬥有解密,各種玩法互相穿插,讓整個關卡更加生動、沉浸感十足。
04. AI的設計與實現
接下來我想談一下咱們戰鬥中小怪AI的一個設計。怪物的AI表現,是高品質動作手遊的另一個設計要點。
在遊戲的AI設計上主要還是採用了行為樹(Behaviour Tree)的方案。一個人物,包括怪物的動作基本流程是透過某種方式進行一個決策。首先要有一個出發點,然後根據某種方式,結合產生的實際情況進行決策,最後決策生成的指令會進入到指令佇列,再一次執行。
對於買家操作單位來說的話,決策者是玩家的輸入資訊,比如拉遙杆是移動,攻擊鍵是釋放技能。而對於怪物來說,他們是透過產生一些情況,用行為樹來進行決策去生成行為指令的。
所以在專案開發中首先要有的是AI編輯器和AI追蹤器——AI編輯器用來對具體AI行為進行編輯,然後再用追蹤器來進行驗證。在開發過程中,透過這套工具,我們能夠對AI的感受和體驗進行多版本的調整,從而以達到最優的AI解。
05. 後處理效果
最後簡單介紹一下後處理效果。因為最後在《鬼泣》成型時,除了動作、特效、場景這些模型製作之外,還需要後處理來去對遊戲畫面進行進一步的最佳化,儘可能的貼近主機原作的品質。
後處理是我們很重要的一環。但是在使用後處理的時候,我們還是秉著一個高化值和效能平衡的這樣一個理念去進行的,儘量使用消耗較少,可能基本的機制就是用Unity Postporcess v2機制。
很多後處理特效,比如像徑向模糊、色彩分離、螢幕撕裂等這些效果,在於聲效、特效,還有案件的反饋結合,能夠整體的提高戰鬥的表現力,還有打擊感,這樣能夠實現一個1+1大於2的效果。
此外,通過後處理給場景制定出一些特殊效果,比如說雨天的一個場景,我們沒有采用在螢幕上去紋理取樣的方式去實現雨天效果。而是透過uv餘取後,把螢幕切割成多塊,然後透過多塊之間的流動去實現雨滴的流動效果。然後再在螢幕的四周加上一些白色效果模擬霧氣,綜合起來就能比較真實的展現雨天的氛圍。
同時在場景裡面,我們用帝光配合深度霧、高度霧和主光源,再去模擬一些大氣物的效果,這樣的話就能比較真實的還原主機畫質的表現。
總之在各種效果的制度中,我們會根據當時的一個情況,比如說這是戰鬥場景還是中間的過程,或者還是一個劇情動畫的場景,然後再去匹配上不同的這樣一個後處理效果,來最大化的實現畫質的效能,還有體驗的三個統一。
06. 總結
總的來說,《鬼泣巔峰之戰》研發過程中還是一直以主機級的動作策略為目標的。
其實除了上面介紹的專案,我們還做了很多的事情,因為時間關係就不可能展開了,比如在劇情動畫、表情製作、相機、場景,還有最後很關鍵的效能最佳化方面,也進行了各種各樣的製作和嘗試。
最大的目的還是說利用引擎的強大效能,在移動平臺有效能限制的這樣一個平臺上進行適應性的開發,然後追求了畫面效能,還有戰鬥體驗的三者的統一。當然最重要且最大的區別在於我們要打破“跳躍”的束縛,最終在實現鬼泣“皇牌空戰”的魅力。
BIGC北京國際遊戲創新大會每年9月底在北京舉辦,大會致力於打造遊戲行業經驗分享的平臺,透過製作人、內容、技術、硬體、發行平臺、商業營銷等方向的經驗分享,促進中國遊戲產業健康向上發展。