當前位置:
首頁 > 最新 > 《蠟燭人》製作人高鳴:如何原汁原味地將主機遊戲移植到手機平台

《蠟燭人》製作人高鳴:如何原汁原味地將主機遊戲移植到手機平台

5月11-13日,由Unity舉辦的Unite Beijing 2018大會在北京國家會議中心進行。在主機、PC及手機等多個平台都獲得出色玩家口碑和不俗銷量的《蠟燭人》製作人高鳴,從技術和商業等多個角度,分享了關於如何原汁原味地將主機遊戲移植到手機平台的寶貴經驗心得。

《蠟燭人》製作人高鳴

高鳴:大家好,我是高鳴,我是交典創藝的創始人也是遊戲的製作人,準確地來說,我是這個團隊裡面的主程+主策。《蠟燭人》是比較有代表性的一款遊戲,《蠟燭人》這款遊戲基本上所有的代碼都是我一個人寫的,我們團隊只有我一個程序,很高興能跟所有程序在一起分享這些內容。

我個人是Unity非常老的用戶了,我大概是在2和3左右開始用Unity,已經用到現在,2017、2018,從最早參加國內的Unite大會,那時候只是作為聽眾,隨著後面取得了一些成績,我可以在一些Unity舉辦的本地的小型分享會當中,去分享一些經驗,現在終於有機會可以參加Unity最高級別的會議,我個人也感覺有成長,也是托《蠟燭人》這款遊戲的福。

《蠟燭人》這款遊戲,它從主機走到手機上,也算是使用Unity這款引擎做了很完整的流程,在這個期間,我們經過兩年多的時間,蹚過了不少坑兒,也有一些經驗,給大家分享的主題叫做「原汁原味的將主機遊戲移植到手機平台」,對於這樣一個主題,大家一看就覺得這個題目是比較大的,真正的去講怎麼樣把主機遊戲移植到手機平台,單純從技術角度來講,它不是一個特別容易的事情。所以今天我的演講不會去過多的聚焦到特別細節的技術,我也聽了很多這次大會的分享,技術的分享都非常得細緻,會到具體某一個參數應該怎麼調整,因為這樣的移植工作比較複雜,我也不太方便介紹太多的細節。但是我覺得在有些技術方面的選擇和重要的設計決策上面,我覺得是有一些值得分享的類似,大家應該聽起來不會太累,希望能給大家一些收穫,也調劑一下特別高密度的信息,我這個稍微輕鬆一點。

我介紹一下這次分享的案例遊戲,《蠟燭人(Candleman)》,這是它的宣傳片,大家可以簡單看一下。

這是我今天分享的這款遊戲,這個宣傳片大家也看到了是PC版宣傳片,這是《蠟燭人》這款遊戲的一些截圖,這些截圖主要是來自於主機或者PC版,可以看得出來,這款遊戲它的色彩很多變、環境也很多變,因為大家都是技術人,可以看得出來,《蠟燭人》這款遊戲雖然說是小製作的遊戲,但是它在使用硬體的性能方面,一點也不含糊。《蠟燭人》這款遊戲是一款全部由動態光源去點亮的遊戲,我們在做主機版的時候,也是完全沒有省著,能用光全都用光,這也是得益於Unity的這一套渲染的邏輯。

我舉個例子,左上角這張圖,別看它不怎麼亮,仔細看有一朵小藍花,所有小藍花上面都有一個光源,可以大致看到,在這個裡面有多少書,這些書上面有多少花,有多少花就有多少光源,我們遊戲也沒有節省,不管遠近,只要有花全都點亮,但這個性能,在Deferred Rendering下光源的數量不是任何問題,問題是它的覆蓋面積。我們這個光源很小,所以沒有任何性能的問題,而且確實讓遊戲整個的效果增色不少。當然,這一切都是在主機和PC上。

我們下面關鍵講的是怎麼樣把它從主機PC過渡到手機上。這是我們在手機上發行取得的一些成績,《蠟燭人》在手機上是由中手游代理髮行,在國內它是由騰訊極光去做的發行業務,在蘋果Today獲得一篇專訪的文章,登上付費的第一名,這款遊戲打了折之後也是賣18,在這樣的付費情況下能夠登陸付費榜第一名,也是不容易的,在App Store評分也不做。我會講講怎樣能夠延續在主機上的品質,不會說因為這樣的移植而產生負面的影響。

很有必要講一下,在手機之前,《蠟燭人》到底經歷了什麼事情?在我看來,《蠟燭人》移植手機很大程度上並不是一個單純的技術上的問題,很多時候是市場以及設計方面的決策。所以說最終做出移植手機的決策,以及怎麼樣在移植手機過程當中我們選擇正確的技術,去考慮硬體的適配,到底做到什麼程度,其實它都是很大程度上取決於在手機之前很多的經歷。

我簡單地分享一下在這之前的事情,《蠟燭人》這款遊戲最初是由ID@XBox這個項目發掘出來的,大家如果參加展覽的話可以看到,靠右的大哥,他是微軟全球的老大,是他在一次參觀國內展覽的時候,注意到了這款遊戲,由於得到他的重視,在國內包括在國外Xbox整個團隊裡面,《蠟燭人》都受到比較重視的項目,我們有機會參加了美國GDC展覽、PAX,在國內發售的時候也是一直作為國內的XBOX主推的產品之一,當我們在海外發布XBOX版本的時候,也是獲得了海外團隊強力推薦,包括他本人也是玩通了這款遊戲,從頭到尾,支持到底。

隨著Xbox版本的發布,我們隨後又登陸了PC平台。對於主機平台而言,性能其實比現在的PC更加吃緊的。當我們在主機上做好優化之後,再去移植PC是完全沒有任何問題的,這是非常順利的。憑藉著遊戲的品質和創意,我們在國內也是獲得不少獎項,包括在海外,無論在媒體方面還是在主播方面,《蠟燭人》也是在海外發出了響亮的聲音。

這裡簡單列了幾個數據,在Steam上面《蠟燭人》96%的好評率,前100篇評測一直維持百分之百的好評率,前一段時間登陸了騰訊的WeGame的平台,目前有97%好評率,在Xbox海外商店,海外玩家給《蠟燭人》這款遊戲的評分,滿分5分,得了4.5分,也是比較高的評分。所以蠟燭人這款遊戲,除了媒體之外,也得到了很多玩家認可,無論國內還是國外。

當我們做完了PC和主機版之後,為什麼有這樣的一些收穫?我們總結下來主要是兩個重要的方面,第一個是創意,第二個是品質。關於創意方面,左邊這張圖很能說明問題的,這張圖是最初給微軟總裁看的時候,無論是畫面還是操作、內容都是非常粗糙的,雖然說它整個呈現的狀態並不精緻,當時憑藉10秒鐘的光明這樣的創意,得到那邊老大的認可,所以後來才有更多的機會可以獲得展示,以及我們能夠有信心把這款遊戲做得比較細緻。而右邊那張圖,是最終遊戲發售的時候狀態,它體現了一兩年進程過程當中不斷進行的品質。

這裡有一個插曲,我自己前段時間才知道。前段時間,Unity在其他國家地區的宣發負責人,不是在中國,那個負責人有一個問題採訪我,他問《蠟燭人》這款遊戲最初用Unity來做的,但是為什麼最終選擇使用Unreal這款引擎做出來?我當時就很蒙,我說《蠟燭人》就是用Unity做的。不只是Unity這位宣傳負責人,在國內也有很多同行或者發行商一直不知道《蠟燭人》這款遊戲是拿Unity做的。後來根據我了解,他們主要是覺得在畫面光影上面,覺得《蠟燭人》所呈現的狀態不太像常規Unity的遊戲,他們以為我們換引擎了,從這一點可以表現出來兩個,第一,《蠟燭人》在品質方面做了很多打磨,使得它的效果有點脫穎而出的感覺,第二,也是可以看出使用Unity引擎,目前在畫面上面做得也是很不錯的。

下面是要談到這次的重點:手機的部分。在移植手機之前,首先要說明一件事情,《蠟燭人》這款遊戲我們自己團隊內部始終都沒有決定要把它移植到手機上面。《蠟燭人》這款遊戲當時是2016年年底開始去正式立項做的,那個時候我回憶手機應該還是在iphone4、Iphone5的狀態,那個時候我們覺得做主機遊戲太爽了,終於可以開始狂放光源。但是因為蠟燭人遊戲的創意,以及它比較簡單的操作方式,始終都有人跟我們溝通手機版的問題,當時我們覺得這個事情是不可能的,主要在手機硬體性能上面不太可能,把主機遊戲移植上面,壓根沒有把這個事情列入日程。

直到前一年,發行商很認真跟我們交談這個事情,我們開始琢磨移植的事情,但是在移植之前,我們並沒有先開始考慮手機性能能不能適配到這麼高的程度,我們先考慮這麼一個問題:為什麼《蠟燭人》這款遊戲有人想讓它登陸手機,《蠟燭人》這款遊戲登陸手機版它的價值在哪兒

我自己之前也做過兩款並不成功的遊戲,即便如此,我是很清楚手機的市場,至少在中國它是一個遠比主機和PC更加賺錢的市場,整體的資金量是要大很多,市場也要大很多。《蠟燭人》這款遊戲,雖然有品質和口碑,很明顯不會讓發行商賺大筆的錢,這個事情也是我們一直覺得它沒有太多的意義去移植手機的原因。

但是在前一年,有很多發行商他們很認真地跟我們談這個事情,我們也去了解和思考,《蠟燭人》這款遊戲在手機上的價值,首先第一個接觸的是發行商,當發行商跟我們談的時候,我們能夠感受到他們是很注重《蠟燭人》之前在PC和主機長的口碑和讚譽,而且我能感覺到,除了金錢之外,在現在這個世界對於國內手機發行商而言口碑是非常有價值的東西,雖然不能夠量化為多少錢、多少口碑,但是我能感覺到他們把口碑和收入算做同等的不同價值點來考慮,現在作為手機領域的團隊應該能夠更受到這樣市場的變化,這應該說是這幾年手機市場不斷發展的結果。從純金錢導向的市場變成大家開始要經營自己的口碑這樣的市場,蠟燭人對於手機發行商而言,首當其衝的價值就是口碑。

後來隨著跟發行商的接觸,發行商也有幫我們接洽一些平台方,當時很有幸跟蘋果那邊編輯做了溝通,從跟他們的溝通當中,我們感覺到《蠟燭人》對於他們的平台也是有價值的,從交流當中最大的價值是一種稀缺性。這張圖片是《蠟燭人》的手機版的圖片,可以看出來,這張圖片以一個手機遊戲的身份出現在App Store非常奇怪,不太常見。因為在手機市場上面,追求很極致的創意遊戲是有很多,而且追求很高品質畫面的東西也有,我也不舉例子了,也非常多。但是這樣有品質,畫面又非常有風格化,純動態光源去驅動的氛圍獨特單遊戲,在現在這個時間點,在手機市場上確實是很少見到的。所以我覺得對於平台而言,這樣一種稀缺性是很有價值的東西,它能夠體現出平台的可能性,包括對於App Store對於手機性能的彰顯,也很有價值

第三個是玩家,因為遊戲通過發行商登錄到平台,最終還是由玩家把這個遊戲真正的做熱、做出口碑,對於玩家什麼東西最重要呢?最初的時候我們對於這個事情並沒有考慮得非常清楚,我們最初在移植之後也是面臨很大的優化壓力,特別是在兼容低配的時候,我們當時一個策略,我們會把最低畫質降到非常低的水平,從而去兼容很低端的手機。但是後來我們開始找外部的玩家來我們工作室測試遊戲,當時有一個非常深刻的印象,有兩個女玩家過來,因為《蠟燭人》這款遊戲它的畫面看著也挺童話的,不少女性玩家感興趣,這兩位女玩家玩手機版的時候提到了,她們玩到那個版本的畫面有點沒有達到她們的預期或者跟我們宣傳的畫面不太一致。當時我們測試的機器也不是很高配置的,畫質沒有達到優質的水平,她們玩了之後感覺很失望。從那之後,我們總結了這個事情,其實對於很多手機玩家特別是在《蠟燭人》的手機版發布之前,很關注這款遊戲的玩家而言,他們很多是沒有玩過PC和主機版的玩家,關注這款遊戲很大程度上就是因為幾張截圖和一段視頻,畫面是他們最早接觸到的東西,也是他們最感興趣的東西。

我們知道了這一點之後,我們就會發現其實雖然在做《蠟燭人》的時候,我們最核心的一些訴求是在創意方面,但是我們發現在手機平台登錄的時候要格外重視它的畫面表現,確實對於很多玩家而言,這個是他們最感興趣的一個東西。所以這也決定了,我們後面在移植時候的一些考慮的重點。

因此,根據上面的對於不同方面,他們對於手機版價值的分析,我們最後確定了《蠟燭人》的手機版,它在移植時候的主要需要解決的問題,也是我們面臨的挑戰。第一個,關於畫面渲染方面,剛才也提到了,我們發現我們不能把《蠟燭人》的畫面徹底改成純手機的,很平的、很高性能的畫面,我們發現這樣不行,因為大家的期待不是這樣的。第二個,《蠟燭人》在主機上它的品質很大程度上也來自於它很連貫的遊戲體驗,我們覺得手機上能夠為了貫徹這種品質,它的體驗是需要針對手機進行優化的。所以下面著重從這兩個方面講一下,我們在移植《蠟燭人》手機版的時候,所做的技術上的選擇和一些考慮,包括設計方面。

第一個方面,關於畫面渲染的,我看到在這個演講後面專門有一個演講來講這個的,這個很專業,我不便於仔細來講。《蠟燭人》在手機上的畫面渲染對於我們而言是一個做減法的過程。我們在主機上給大家簡單說一下,我們大概用的渲染技術,我們在主機上用了剛才說過的技術,全是動態的,我們使用了Linear rendering,同時還實行了HDR在PC和主機上,全屏的濾鏡,同時還買了APP Store上面的插件,當時在前一兩年市場上買到最高品質有關於調色、有關於SSAO視覺特效的插件,我們都有用到。但是在手機版的時候顯然不行,很卡,但是能跑。第一步我們要做的是減法,我們在想,在手機上有一個特點,它的屏幕雖然解析度極高,但是相對比較小,玩家不太容易觀察到特別細節的東西,我們在想能不能減一些東西。

對於《蠟燭人》這款遊戲而言,從外行來看,下面另外兩張圖是最終渲染圖,可以看到它的效果,用了之後畫面就很高級,用多了之後也很Low,我要說的是對於《蠟燭人》這款遊戲而言,它是一個有大量動態光照的遊戲。右上角那張圖,很多開發者應該能看出來,那裡面的小燈泡都是光源,這個小燈泡都是場景裡面的光源,全部是動態,而且它們彼此之間相互疊加,是這樣的一個狀態。所以說《蠟燭人》裡面有大量的動態的互相疊加的光源出現。當時我們在做《蠟燭人》PC主機版的時候,那個時候用的Unity4,當時做一個升級,升級到Unity5,我們當時說終於開始做主機PC版了,我們查Unity的新技術,全都用一用,正好在5月初出現了Linear Space的東西,用過之後整個畫面都毀了,變得一片灰暗,感覺特別得丑,沒有任何對比度,但是這塊好在當時堅持住了,沒有去放棄。

為什麼堅持呢?是因為我們發現有一個問題,當時我們在做主機版改版的時候,我們當時已經在光照上面出現了無法解決的問題,當很強的光和其他光源照在一起的,那個光一下子爆掉,很白很白,沒有任何細節了。我們當時也有試過用HDR解決這個問題,但是效果並不是很明顯,當我們切到Linear Space之後,雖然畫面很灰,光在疊加的時候不會特別爆了,它的效果非常得柔和,就是因為這一點,我沿用了Linear Space,你需要調你的材質和光,把光的強度拉開差距,同時需要加上後期的效果,把對比度找回來,我們Linear Space…結合HDR,光的渲染底層技術。

在手機版的時候,我們發現把這個切掉是不行的,我們可以關掉HDR在手機版的時候雖然關掉了HDR,但是我們保留了Linear Rendering,保證了《蠟燭人》很柔滑光照效果特別重要的東西。HDR當時測過,關掉HDR確實有影響,你會發現當那些光很強疊加的時候,如果有HDR的話,它的細度能夠做到更好,但是我們發現那樣的情況對遊戲非常少,即使在那種情況下,HDR能夠改善的部分對於《蠟燭人》這款遊戲它的面積很小,玩家並不太容易察覺。所以最終我們需要HDR保持了光照,在文檔裡面提到了,有一點HDR的作用,讓你的光照能夠更好的去適應很強的光照變化,這一點跟HDR有很多共同的地方,手機版關掉了消耗資源比較多的HDR。雖然這個技術對於硬體有一定的要求,比如說,要是蘋果應該是需要有(英文)的渲染支持,在去年那個時間點上,這些技術都已經支持了很好,我們非常順利的保留了這個技術。

我剛才提到的爆光的問題,禿頭的這張圖表現的很清楚了,我不反覆介紹了。

第二個方面,PBR,在主機版的時候能看得很清楚,材質效果比較好,因為我們用了PBR,在這裡我想說一下,為什麼我們要用PBR?在這裡面這個決策並不完全是考慮到效果或者是性能部分,因為如果說性能的話,我覺得至少在手機版應該考慮換掉PBR,但是我們當時選擇PBR這個東西,很重要的一個原因是在於它的創作流程非常得直觀,非常得符合人類的認知規律。這個東西對於我們的美術人員,其實非常有價值的,它通過這樣的貼圖以及物體表面的粗糙程度、光潔度定義哪些地方反光強、哪些地方反光弱,這些材質哪些地方是金屬的、非金屬的,哪些地方是金屬與非金屬之間的,讓我們美術人員非常直觀的通過生活的規律,去創作好遊戲裡面不同的材質,而且基於這套PBR的渲染流程,我們美術的這種想像或者說它的設計總是能夠比較真實在當中得到最終的渲染結果。所以我們覺得使用PBR材質流程,對於我們《蠟燭人》這種項目而言,除了質量的提高了之外,更重要的一點是簡化了美術人員的創作流程,美術人員可以更專註的迭代,左下角這樣一個石頭花紋怎麼樣應該更漂亮,不用糾結石頭上的光照怎麼調比較真實,只要說這是石頭,光潔度怎麼樣就好了,在性能方面它不是最佳的選擇,但對於《蠟燭人》而言,需要保證自己的質量,保證它的創意。

這是我們在做手機版移植的時候沒有變的一個東西,因為我們覺得如果我們把整個PBR材質換掉,換成更高性能的材質,雖然效果更好,但是很難保證渲染維持跟主機上一樣的質量,在這裡沒選擇換掉,但是我們做了一些簡化,最明顯的是在主機上的時候,我們用到高度圖,這些都有用到,會給這個畫面帶來更多的細節,給這個物品帶來更好的表現,但是手機上我們嘗試把它們去掉了,效果沒有太大的影響,特別在手機中小屏幕的觀看。所以在優化當中做了這樣的簡化,保證大的效果的基礎上,我們對於一些材質做了刪減。

第三方面是讓畫面熠熠生輝,而且這次Unity大會在很多地方都講到這個東西,Post Processing Stack V2,應該剛出沒多久,而且是V2的版本,大家如果用過的,它有一代版本,那個比較早,應該在去年已經放到上面了。我們在手機版最初的時候並沒有選用這個版本,我們沿用在主機上的濾鏡,當時的好處是我們會比較容易把畫面的整個特效,調整到和主機版是一樣的,但是問題是那東西的性能確實比較有問題的,SSAO那個插件對於性能的影響比較大。我們在測試當中發現性能存在一些問題,我開始著手去優化這個東西,優化的第一步,我想到了換掉那兩個特別重度的插件,在找的時候,我當時找到了Pos Processing Stack,總的來說它比較快,所謂的Stack,一系列的渲染放在一個隊列裡面,這樣節省一些渲染的資源。

但是當時我們用了之後發現一代有一些兼容性的問題在手機上,而且我也做了一些調查,發現確實有些遺留的問題,我不太好去使用Post Processing Stack第一代,我用了第二代,專門針對渲染問題做了處理,我印象中是在它的Pos Processing腳本上面有一個勾,勾選一個選項,它會防止由於全屏渲染的數值上的計算錯誤,導致了整個畫面黑屏的問題,而這個問題是手機版的時候,在好幾款手機上出現了這個問題,我們鎖定由於全屏渲染特效出的問題,那個給我很大的吸引力,如果有一個插件能夠保證這個特效能夠始終正確的顯示,至少說不黑屏,我覺得是很可用的。所以我很快選用了Pos Processing Stack,你可以看到,在《蠟燭人》裡面,左邊沒有開這個插件的,右邊是開了之後,加了三個特效,一個是Bloom,一個是ambient Occlusion,一個是colorGrading。

我是一個特別愛買插件的人,我在App Store上面購買音頻類的插件,在我心目當中,因為我已經做了很多年Unity了,我始終有桿稱,如果官方有這個我不會買App Store。之前在UI系統的時候,當時有一個UI特別火,NGUI,我一直沒有用,原因那是民間的插件,雖然已經非常火了,但我覺得那個不穩妥,終於有一天,Unity把NGUI收編了,出現了UGUI,我開始用UGUI,這是很值得去考慮的,每天換這種插件都有學習的成本、工程升級的問題,我建議能用官方的盡量用官方的。而且這次使用Pos Processing Stack V2,有一個特別讓我覺得踏實的地方,當我去登錄上面去查這個插件有哪些問題的時候,這個插件有大量Unity工程師去維護的,他們會很認真的跟蹤每個用戶反饋的問題,他們會去解決這些問題,如果解決的話,他們會標註出來這個問題在哪個版本里已經解決,如果沒有解決,得益於他們整個社區,大家也會貼一些自己的解決方法,我覺得這個是很踏實的,因為我用一些插件的感覺,其實這種支持特別容易出問題,當你做多平台的時候,這一個東西在一個平台運行起來沒事兒,但是在跨平台,特別像主機、PC、手機這三個平台跨的時候,插件的兼容性特別成問題,官方的開發會更有價值。

我簡單展示一下,我在Post Processing Stack 用的三個濾鏡特效,第一個是ColorGrading,它的畫面一開始比較灰,這個效果有點像HDR,我們利用這個來調色,我稍微拉到了一下對比度,稍微提亮了一點曝光,手機版格外曝光高了一點,右邊那張圖是調過色的效果,左邊應該是一片黑,右邊可以看出來亮度和對比度比左邊要好。第二個是SSAO,我也不知道怎麼翻譯,地話是旮旯陰影,旮旯的地方都有陰影,鐵鏈的下面,像右邊木頭縫裡面看到比左邊黑,這個效果很重度,官方也說了,盡量手機上別用,也有評價過,我們發現這種效果SSAO對於《蠟燭人》這款遊戲,質感的提升雖然很細微,但是效果很明顯,我們還會把它保留在了高畫質上,如果畫質降低的話,我們優先把這個效果去掉。第三個是Bloom,效果比較一般,Bloom大家比較清楚,對於以光為主打的遊戲是很關鍵的。所以這個效果,剛才提到兩個小姑娘試玩的時候,我們遊戲最低畫質下的時候去掉了Bloom的效果,沒有閃閃發光的效果,我們發現這個效果對於玩家視覺的感染力特別重要。因此,我們最終把Bloom加進去了,經過測試我們發現,Post Processing Stack這個性能真的很不錯,特效全開的時候,真的有影響是1到3幀左右,對於《蠟燭人》這款遊戲,這是很容易接受的,包括Bloom,單獨開Bloom,真實看不出來幀處有影響,為什麼比較有信心,在最低畫質下面還把Bloom給開開的原因。

下面我再講一下關於光的部分,之前我說過,《蠟燭人》在主機和PC上用的這個,現在手機真的有能夠在硬體上理論支持的,我們也試了一下,發現跟主機上的效果很不一樣的,對於《蠟燭人》這種大量動態光源的技術,它是像救星人一樣的存在,在Forward性能不太好,當開了之後性能有很大的提升,不再受限於光源的數量,在手機上可能因為硬體或者渲染的問題,並不能呈現出很高的渲染效果。所以在光的部分,我們最終不得不在手機版選擇Forward Rendering,它的性能即使對於有大量光源的,可以有優化的選擇。之前我們在PC上面使用之前那個的時候,DrawCall控制是比較低的,即使有大量的光源給大量的物體打光,做它的法線貼圖的光照,它也能夠正確的把這些小的碎片的Mesh Batch起來,但是到了手機上,這個問題發行了,我懷疑是FowardRendering導致的。

《蠟燭人》的地形系統為了設計師創建比較便利,我們使用了一種模塊化的構成方法,右邊這張圖有大量的綠色線框,那個是一個一個的碰撞體,每一個綠色的線框是我們這個地形的一個模塊,它自帶一個碰撞體,同時還自帶一個Mesh,這樣高度的地形有幾十塊、上百塊碎塊物體拼起來的,對於主機PC這麼一個堆東西會整體Batch起來。但在手機下這個場景,Drawcall飆升,通過檢查Frame Debugger,我發現每個碎片是一個一個drawcall繪製出來的,而不會自動batch。所以最終做了一個手工batch的功能,使用Unity Mesh的CombineMesh函數,把這個地形合併成一個Mesh,最終這個場景的Drawcall,大概降低到了一兩千左右,性能順利達標。

我稍微提一點,做主機版的時候,其他開發者跟我說過,像Xbox、PS4這種級別的機器,面數早就已經不是這些機器的瓶頸問題了,主要的問題來自於渲染,光影這些東西。當時一聽這事兒,我們就比較踏實了,狂給物體加面,發現真的沒有什麼問題,到了手機版之後,我們心裡是比較虛的,一開始給手機版的模型做一整遍特別狠的簡練操作,後來發現好像瓶頸不是那個地方,這個場景問題是Drawcall,其他場景是關於陰影的渲染,一出影子Drawcall立馬飛起來了。我們發現了性能往往不是在這個面的地方,我們通過這個調查,逐步的把一些模型替換成了高頻度的模型,特別是《蠟燭人》,對於現在這一代手機而言,應該跟主機差不多,它的性能瓶頸不是多少三角面、多少頂點了,更重要的是這些面和點最終給它渲染多少遍、有多少光、多少影這些問題。

這個是我剛才說過的,我們在渲染方面做一系列努力的成果,上面兩張圖,左邊那張圖是我們主機版的圖,右邊那張圖是我們手機版的圖,右邊這張圖額外有一個藍光,可以看得出來,我們在效果上面其實跟主機版的維持還是比較一致的,甚至我們給玩過主機版的發一些圖,他們都看不出來,我們技術選擇比較好的保留了在主機上呈現出的質量。而下面兩張圖是遊戲內部使用自帶的簡易的拍照功能,拍出來的圖片,這都是手機版的畫面。左邊那張圖,你可以看到,綠色這個藤,包括黃色和紅色的花,它的面數並不低,它的問題並不在於有多少個面,而在於它的光和影渲染的地方,這是我們技術的選擇,最終做到一個成果。

我再簡單介紹一下其他的部分,在手機操作方面也是做了很長時間的嘗試,我們最初的嘗試其實是虛擬按鍵的,我個人沒有玩過《王者榮耀》,特地下了《王者榮耀》,反覆來玩兒教學關,我們也做了不同版本的虛擬按鍵的操作,最終我們受到了其他遊戲的啟發,我們發現手勢也可以做一些動作。所以最終我們選擇了跟主機版完全一致的,無HUD,在遊戲內部如果不暫停的話,不出現任何界面的設計,在手機上面也是維持這樣的設計,我們使用了那個手勢操作取代了虛擬按鍵,右邊是操作方式,左邊還拿手對,看不見的虛擬按鍵,右邊是使用手指按住屏幕點火,滑動屏幕是跳躍,我們發現這個操作方式還是很不錯的,雖然收到玩家的反饋不太習慣,但是我們對於這種操作方式比較有自信,我們覺得它比較適合這款遊戲,而且達到遊戲操作精度的操作方式。

這也是我們在內容上面去考慮的重點,希望將這種設計方面的內容,無HUD的設計會延續到我們的手機上,有更完整移植的感覺。在內容方面,我們相應的進行了簡化,主要是針對手機玩家更加的輕度,包括他們在操作上的難度更大,我們降低了關卡的程度和難度,這張圖左邊是主機版的遊戲,可以看得出來,這個右側是有一個搖晃的木板,你需要跳到這個搖晃木板上過關,右邊給手機版裡面換成了特別大的木箱子,很難跳出去,我們在這個地方放了一個大蜡燭,防止你的失敗。從這個地方可以看出手機版優化的地方,在手機版你的視覺比較近,我們把更多遠處的東西放在這兒,渲染的東西越少,Drawcall越少,在手機版上面由於屏幕的限制,大屏幕上能夠看得清楚,單在手機上通過測試,很遠的東西看不出來,佔用了完全的Drawcall。

我分享兩個經驗,第一個,從主機到PC、到手機這樣的移植是完全可行的,我希望給各位開發者同行一個經驗,首先在技術上是可行的,我還是提到,當時我們2016年時候沒有想到,《蠟燭人》怎麼在iphone4上跑,當我們開始移植手機版的時候,應該是在去年,把這個遊戲沒有進行太多優化,直接在iphone8上面跑,我們發現它跑的比主機還要長,一定都不誇張,因為主機上目標是30幀,在手機上很輕易的到30幀,而且沒有做任何修改。那個時候我發現手機的硬體進化實在是太快了,包括我們現在做移植之後,我們發現在向iphone或者安卓新時代的手機上面,跑完這樣一款遊戲非常流暢的一件事情,在硬體上面和引擎進化方面,它的可行性提高了。

在商業邏輯上面,《蠟燭人》也通過它發布的經歷,證明了這樣的主機到PC、到手機的商業策略也是可行的。現在在國內市場至少說主機和PC,相對於手機遠遠不是一個有大量資金的市場,但是它裡面有大量的核心用戶,有大量能夠去引導整個遊戲口碑的重度用戶。所以你在這兩個平台把口碑、把用戶做好的話,其實反推到手機上,有很多的先發優勢,這樣的邏輯無論在可行性上面還是在商業策略上面,都是很值得嘗試的一個邏輯,包括對於現在專註於做獨立遊戲,主機PC遊戲的開發者而言,也是很值得考慮的方向。

我想通過《蠟燭人》的移植總結的一個經驗,我覺得作為開發者而言,往往都會陷入到技術設備裡面,移植手機我們要做優化,我們要兼容更多的機型,兼容90%的機型,在技術上真的是可行的。你看Unity任何一個地方,從畫面的濾鏡、從光照技術、從面數、從代碼,在技術上每一個地方都可以進行優化,如果不斷的想怎麼優化,不斷的跟著他們的節奏,他們說還有這麼多技術沒有兼容,你要不要考慮兼容一下,如果這樣來做的話,並不一定能帶來更多的價值,很多時候我們要去搞清楚,一款遊戲在手機平台上面,它的價值到底是什麼樣的價值

我舉一個例子,我之前很關注的兩款遊戲,Inside和Life Is Strange(奇異人生)都移植到了手機上都在APP Store上面,但在我個人看來絕對不會買Life Is Strange這款遊戲的,我會毫不猶豫地支持Inside,我覺得那才是正確的主機移植手機的態度,Inside在手機上玩的感覺維持了跟主機平台一致的標準,那種獨特的視覺氛圍、超越周圍所有遊戲的品質感延續了下來。但Life Is Strange我單純看它的宣傳圖,是很粗糙的,那種風格化的視覺在手機上完全丟掉了,反而在我看來為了性能而做了太多但妥協,而且我看評論,即便這樣但畫面質量玩家也說性能優化的不是很好,在我看來這種移植方式不是特別明智的。我覺得主機移植手機應該首先考慮到怎麼樣延續在主機上的品質和口碑,讓這些之前在主機上支持你的玩家能夠再次在手機上給你推一把

我的演講結束了。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 遊戲之音 的精彩文章:

專訪《如果可以回家早一點》製作人:一念天堂,一念地獄
朋友,新出爐的遊戲圈996猝死險了解一下?

TAG:遊戲之音 |