一套8萬面建模的3D服裝,是怎麼在《閃耀暖暖》裡做出來的?
8月6日,疊紙遊戲研發的3D換裝新作《閃耀暖暖》終於上線了,不出所料,這款遊戲剛上線就衝到了App Store免費榜第一位。玩家有多期待?據瞭解,這款遊戲首日新增已達400萬,這個資料足以說明一切。
從很早的時候,筆者就關注了這款遊戲。原因在於,不管是多麼外行的人,只要仔細看看這款遊戲的建模精度,就能明白它在技術上花了很大的功夫,在手遊端實現了一件非常困難的事情。
具體來說,《閃耀暖暖》裡製作一套3D化的服裝,整體建模面數能在50000~80000面之間,遠遠高於此前水準較高的15000~25000面。這個數字可能沒法給人太具體的概念:做一套這樣的衣服到底有多難?
帶著這個問題,筆者在近期採訪了疊紙遊戲技術中心技術總監張霽、疊紙遊戲暖暖製作組美術總監賢子,以“辭鳳闕”這套服裝為例,瞭解到疊紙遊戲在3D服裝製作上的設計理念、工藝流程,以及技術經驗。
辭鳳闕的製作非常有代表性。它的整體建模達到80000面左右,已經超過了常規端遊的水平,服裝在諸多細節上有很複雜的表現,技術實現的難度很高,正因如此,它的工期長達8個月。
圍繞這套服裝的製作有很多值得探討的問題:設計元素這麼複雜的套裝對3D建模的挑戰有多大?如此多變的刺繡和花紋是怎樣做出來的?頭冠上大大小小的珠子怎麼保證光澤圓潤、無折線?長水袖帶來的穿模問題又如何解決?
《辭鳳闕》套裝展示,畫面擷取自繁中版PV
從整個流程上講,《閃耀暖暖》的3D服裝製作與傳統遊戲沒有太大的區別。製作組通常會先進行原畫設計,再根據原畫製作3D模型、設計好動畫動作效果,然後整合到引擎中,通過技術打磨細節,最後進行品控監修和適配調整。
但具體到細節執行上,這套流程跟傳統遊戲的製作又有著千差萬別。原因在於,他們認為技術不應限制創意的自由發揮。具體來看他們的製作方式。
原畫設計:不對創意設限
在原畫階段,製作組會先根據設計、活動,以及遊戲功能的需要,來定一個服裝的大致主題。
這個主題一定要符合遊戲的世界觀,因為遊戲中的套裝基本是角色們設計的,那麼就要從角色的思路出發,找準符合他們風格的設計。
辭鳳闕的創作初衷,就是做一套符合遊戲中“雲端帝國”風格的服裝。在遊戲的世界觀設定中,雲端帝國曆史悠久,而戲劇更是雲端的傳統文化之一,所以辭鳳闕的設計上糅合了中國古代戲服的元素,成為了雲端文化的代表服飾之一。
2D三檢視線稿
定好主題之後,會由原畫組中擅長這一風格的多位原畫師來各自設計服裝,完成圖稿,然後從中挑選出最合適、品質最高的原畫。
為了達到這個標準,她特別在意原畫師的設計想法和創作自由度,不會以技術實現難度來限制畫師的發揮空間。所以服裝原畫通常需要進行4、5版創作才能篩選出合格的作品。但也有極端的情況,畫師狀態好1版就通過,或者創作過程艱辛畫了20多版才滿意。辭鳳闕的創作還算順利,畫了6、7版之後就篩選出了最終的原畫。
2D三檢視彩色成稿
2D原畫創作完成之後,美術組還需要將原畫的細節拆開,製作成三檢視等素材,並連同服裝細節結構串聯的設定,以及布料和花紋的素材,提供給3D建模師進行下一步的製作。
同時,2D原畫會將細節實現的具體要求給到3D建模師,比如辭鳳闕的服裝上有很多刺繡的花紋樣式,而刺繡是很複雜的花紋,它具備針腳的走向,擁有不同的輪廓厚度差異,這些細節都需要在建模中實現。
刺繡法線圖,能清晰看到刺繡針腳走向和厚度差異
這些細節做起來的複雜度可不低,3D組至今仍然記得當初在辦公室裡的吶喊:“這就是要我獻祭掉全部的頭髮啊!”但因為品質要求,製作組依然堅持要實現這些細節,這才有了後來的效果。
當然,2D組也不是魔鬼。對於技術難點比較明顯的服裝,賢子說,他們一般會先簡單做一個3D低模,在引擎中預測一下最終效果,避免走彎路。只有當3D製作中發現難度真的特別大時,他們才會根據實際情況調整原畫要呈現的效果。
服裝建模:要真實、要細節
在拿到2D原畫提供的素材之後,3D建模師會根據這些素材先雕琢高模,用來給實際用到引擎中的低模提供細節資訊。
這時,有關服裝的大型、整體的褶皺,以及每種布料對應的布褶效果,都需要逐一實現出來。為了更真實地還原服裝的複雜表現,進行打版、計算布褶和雕刻細節,製作組甚至用到了服裝設計工程的專業軟體Marvelous Design。
高模完成之後,再製作低模,這時候就需要考慮引擎中使用的效果、裝置效能的取捨,並在引擎環境中調整材質、貼圖的效果,最終得到成品的3D模型。
辭鳳闕的建模難點在於細節。首先,它的花紋複雜多變,包括底紋、暗紋、明紋圖案等,其中刺繡等細節紋樣需要高精度還原,在製作低模時拼接難度很高。其次,頭冠度複雜度極高,點翠、珠子數量多、結構分佈密集,既要還原精度,又要考慮整體協調性。最後,水袖的還原是業內一大技術規避點,需要還原真實版型的同時,保證質感和動效。具體來看製作組的解決思路。
首先來看刺繡。刺繡是低模製作中很複雜的部分,刺繡結構複雜、細節多,繡的方式、走針的方向、針腳的疏密、刺繡薄厚度體現的橫截高度的不同。
刺繡細節
為了實現刺繡的細節精度,貼圖的拼接也是一項大工程。辭鳳闕的圖案特別多,存在很多上下層的關係,所以貼圖拼接的時候製作組分了很多層,把進度要求較高的貼圖分散在了多個層當中,按照最優的順序來拼接。
多種刺繡的展現
這中間,需要隨時考慮在現有框架下怎麼用最小的空間實現最高的精度。“有的時候這就像拼圖,大量的貼圖怎麼分割槽、怎麼拼,利用率才能最高、精度才能最高,”聊到這裡,張霽不好意思地笑了笑,覺得這有點兒燒腦:“低模同學做起來可能會比較頭疼。”
接下來看頭冠。頭冠的複雜度有多高?舉個例子,據製作組透露,頭冠上大大小小的珠子共有717顆,我也嘗試數了一下具體的數量,但數到第53顆就放棄了。不光數量多,頭冠的兩側還有結構更復雜的珠簾。
頭冠建模
“如果這些都追求精度、圓潤度,就不能用傳統建模的思路去解決,否則很難讓品質和效率兼得。”張霽認為問題的關鍵在於解決思路。
於是他們使用了程式化處理的方式,在製作時指定位置引數,用程式的方式把珠子的實際模型生成出來。這樣在引擎中,就能保證以較低的面數來實現各個角度看起來都光滑的效果。
頭冠珠子細節
為了表現一些彈簧與珠子相連後的動態效果,他們還運用了遊戲的整個物理系統,給頭冠上的每根彈簧都繫結了骨骼。當角色動起來,它就會隨之表現出真實的彈簧晃動效果。
頭冠物理動態效果
最後是水袖。在大部分武俠風的大型MMO中,水袖都是一個技術規避點,大部分團隊會避開腋下延展出長袖的版型設計,而選用從手肘部延展袖擺,腋下到手肘以貼身袖筒來處理的版型。
原因在於,水袖的動態效果需要繫結骨骼來實現,而腋下處於身體和手臂的三角地帶,從這裡繫結骨骼,袖子就容易插到身體裡,出現穿模的情況。但是辭鳳闕的製作沒有刻意規避這個技術難題,它採用長袖設計,袖子從腋下開始往外延展。
這裡的難點在於,首先角色運動時袖子不能穿模,手臂放下時,袖子要有真實布料的摺疊效果,褶皺要符合現實。其次手臂在擺動時袖子要有自然的垂墜感,實際遊戲中看起來,袖子需要是下垂的、軟的。
解決的方案在Unite大會上提及過:在建模的時候,通過骨骼與身體角度的調整,可以儘可能減少模型穿插的情況。參考下圖,如大多數古風遊戲,大袖子在製作時為了方便繫結動態骨骼而向後延展。
隨後,美術會手動調節物理引擎引數,來實現更真實的垂墜效果。所以在遊戲中,當暖暖身著辭鳳闕揮舞水袖的時候,袖子才能隨之自然地擺動。
整個建模完成之後,辭鳳闕服裝本身的低模面數達到46000面,算上10000多面的頭髮和剩下的角色模型,總體面數就超過了80000面。不過據瞭解,這套服裝只是面數比較高的一套,還不是《閃耀暖暖》的極限。
所有的細節都打磨好了之後,2D美術還會對套裝進行最終的整體監修,如果發現不到位的地方,通常就會直接上手在引擎裡調整色彩,做最後的收尾。
在服裝正式上線之前,他們都會盡可能去優化細節表現,直到3D版還原了設計圖上的所有細節,能讓大家感覺到這確實是同一件衣服,才算是完成製作。
反覆打磨:既然要做,就要講究一點
可能看到這裡,大家會覺得《閃耀暖暖》的一套衣服就做好了。我在採訪前,也是這麼認為的,但瞭解之後才發現,細節打磨也是不可忽視的製作工藝。
賢子告訴我,做換裝遊戲就是這麼回事:“既然要做,就要講究一點。”能看到不光是辭鳳闕,在不同套裝、散件、裝飾的製作中,還有很多反反覆覆摳細節的部分。
比如針腳的製作就很花功夫。一般的針腳比較小,能直接在貼圖上做出來,但如牛仔褲等部分服飾,會有一些明顯的外縫線,它的顏色比服裝顏色淺,看起來會很顯眼,於是需要用更高的精度來表現。
遇到這類針腳的時候,就得單獨為它製作貼圖,如果是一些幾何形狀特別明顯的線型,比如鞋帶、洛麗塔服裝胸前的繫帶,為了保證立體感的還原,還要專門製作模型。
同樣需要這樣摳細節的還有髮飾和髮型的匹配。基本上每個髮飾針對每一個髮型,都有各自對應的不同位置引數。“可能會使得每一次上新都會以N次方指數增加除錯次數。”
因為如果不這麼做,一方面會發現最終的佩戴效果和畫出來的不一樣,另一方面,設計者也希望在不同的髮型上髮飾的佩戴方式有區別。還有些時候,不論如何都需要調整,比如原畫提供了一個紮在馬尾上的蝴蝶結髮飾,那麼對於沒有馬尾的髮型來說,就需要用別的佩戴方式了。
最終,製作組想到的法子是:“真實生活中怎麼戴好看,那在遊戲中就怎麼去調整”。這種調整是一項非常繁瑣的工作,為了簡化工序,技術組專門早期設想按照大類來劃分,然後分組匹配,但效果並不理想。
於是他們又開發了一個匹配工具,經過很多輪迭代,最終能讓一個新的髮飾或髮型,能對所有匹配型快速進行檢測,遇到必要的情況再進行人工的細節調整。
在飾品還原真實效果的方面,還有過這樣一個小插曲。某個套裝設計裡頭髮上的蝴蝶結佩戴在了側邊,但匹配到兩條辮子的髮型時問題來了:這個蝴蝶結是隻戴在單側,還是一邊戴一個?
最後設計同學覺得,設計的時候只有一個蝴蝶結,那就只能做成單邊佩戴的樣式,這才真實。於是在飾品數量上,遊戲到目前也堅持著一一對應的原則。
諸如此類的反覆調整和摳細節,在《閃耀暖暖》的服裝製作中屢見不鮮,哪怕是一個散件,製作組也不會區別對待。有些時候,這種摳細節到了一種魔怔的地步,連玩家看不到的地方,他們也在不停地優化。
就好比閃點的變動。去年測試的時候,服裝的閃點還是方形的,今年上線後的版本,已經改成了圓形,但這個改動如果不仔細看幾乎是感知不到的。我問張霽為什麼要這麼改,他的回答很簡單:“圓的更好看。”
改動前後閃點效果對比
不過張霽很享受這種很細的改動:“改動的過程中可以做很多有意思的事情,讓你有更多的設計空間。”後來,他們在做銀河星空效果的時候,也用到了圓形閃點,比方形的自然了許多。
還有就是去年提到過的,就算不一定有人能注意到鞋底,製作組也出於真實鞋子的功能性和美觀性考量,給每雙鞋子都製作了鞋底。
只是在早期測試版本中,大家並不能直接看到鞋底,也很難知道它到底做成了什麼樣。而現在,通過拍照動作的特定姿勢,再放大鏡頭,就能看到鞋底的所有細節了。
拋開遊戲本身的內容,團隊學習製作服裝的過程也很有趣。
由於現在大部分行業的3D建模師男性偏多,擅長的大多是裝甲、戰地服等表面材質偏硬的內容,所以早期大家對女生的裙子不太瞭解。比如不會考究裙子是H字型還是A字型、百褶裙是單褶還是雙褶,大家看起來會覺得都差不多,就像男生看口紅色號那樣不知所措。
不過就算不了解,遊戲還是要做好的,因此在疊紙遊戲內部,男生認真學習女生穿搭知識,女生詳細傳授服裝專業理解的畫面,就成了日常。
你會看到一些畫師姑娘親自上陣,用平時自己類似的服裝穿搭效果,來實際講解。也能發現,男生們有時學得很投入,工作時發現路過的同事穿著正在做的服裝版型,也會衝上去一起討論一下。
從2D擴充套件到3D,對製作組來說換裝遊戲的本質沒有變,他們總是需要在一個遊戲環境中,去做不同維度的服裝,來豐富玩家的穿搭體驗。但對團隊能力來講,這個擴充套件帶來的變化十分巨大。
一些在《閃耀暖暖》製作組內負責2D原畫的成員,在製作過程中也學習到了大量3D製作相關的知識和技術,而很多3D建模師,也掌握了不少引擎相關或者其他領域的技術。整個研發團隊的經驗都得到了另一個維度的拉昇,他們也在不斷吸收人才來壯大這個團隊。
如今,疊紙的畫師、設計師、建模師、技術,整個鏈條上的研發人員,都有很統一的意識,去做一個原創的、真實的、高品質的東西。
技術工具與藝術創作間的平衡
看過這麼複雜的製作細節,大量人工的介入與反覆的調整,可能會有人覺得《閃耀暖暖》的製作不夠工業化。賢子不這麼認為:“一個個去適配發型與髮飾的方法看起來很‘蠢’,但我們覺得手調和工具並不衝突,工具可以幫助創作者提高工作效率,而手調是藝術創造的表現。”
張霽對技術提升創作空間的做法更有感觸,他們製作的工具、攻克的技術難題、最終實現的效果,協同製作的流程管理,都是為了實現設計師的想法。“哪怕有再先進的工具,它也只是提升了生產效率,創作終歸得由人來做。”
現如今,服裝產業仍然有很多手工定製高檔品的模式存在,很多東西出現的目的就是去量身定製,這在《閃耀暖暖》裡也是一個道理。而這種手工藝的需求會推動著技術和創意繼續迭代:技術和美術需要商量,如何創造一個更強的開發環境,再借助這個環境來實現更好的效果。
回想起第一次正式對外曝光遊戲PV的那天,賢子和張霽都十分感慨。那天,整個製作組的情緒都特別複雜,有對作品終於問世的激動,也有製作這門“考試”結束了等待玩家檢驗的忐忑,還有需要製作更多服裝、有更多工作量的壓力。
與這些心情同樣多的是期待,他們用技術實現了很多創意,那接下來還能實現多少新的點子?這種創作者的躁動讓他們迫不及待地想要接著試手。在賢子看來:“藝術家的靈感創造加上強力的工具,才能以次方級的進度發展,創造出更好的內容。”這條路,他們今後也會繼續走下去。
越是深入瞭解《閃耀暖暖》一套服裝的製作流程和工藝,我越是感慨:在快餐佔主流的手遊領域,沉下心來專注在一個領域,做一件手藝活兒,是多麼不容易的事。但也正因如此,才有了這樣的《閃耀暖暖》。
作者:依光流
來源:遊戲葡萄
原地址:https://mp.weixin.qq.com/s/-Vfv48MdWHD2WyDIULk_4Q
相關文章
- 閃耀暖暖遊戲分析報告遊戲
- 閃耀暖暖手遊布料材質解析
- 《閃耀暖暖》技術分享:疊紙如何打造它的首款次時代3D手遊?3D
- 《閃耀暖暖》制霸臺灣iOS免費榜 “次世代3D手遊”怎樣俘獲女玩家芳心?iOS3D
- 《閃耀暖暖》,如何將遊戲角色打造成虛擬偶像?遊戲
- 中國市場需要什麼樣的“女性向遊戲”?從《戀與製作人》《閃耀暖暖》談起遊戲
- 那些讓你無法自拔的遊戲們是怎麼做出來的遊戲
- 女性向遊戲勢頭仍勁,《閃耀暖暖》交出滿意答卷了嗎?遊戲
- 在沒有DOM操作的日子裡,我是怎麼熬過來的(中)
- 在沒有DOM操作的日子裡,我是怎麼熬過來的(上)
- 原來聊天機器人是這麼做出來的機器人
- 《Pizza Tower》:以“速度”為核心的平臺遊戲是怎麼做出來的?遊戲
- 疫情之下,這幾款App Store獲獎遊戲是怎麼做出來的?APP遊戲
- 如何突破瓶頸又釋放工作量? 深度剖析《閃耀暖暖》從2D到3D的美術開發過程3D
- 1個人,耗時2年半,這款大型仙俠3D硬核ARPG是怎麼做出來的?3D
- 剝開比原看程式碼08:比原的Dashboard是怎麼做出來的?
- 在沒有DOM操作的日子裡,我是怎麼熬過來的(終結篇)
- 解析的JSON裡面欄位是動態的怎麼處理?JSON
- 疊紙遊戲CEO姚潤昊談《閃耀暖暖》背後的創作精神:勇氣、毅力與韌性遊戲
- 怎樣用CSS做出3D效果的雲CSS3D
- 怎麼在jupyter裡安裝包
- 誰知道在STRUTS裡的j_security_check是怎麼用的???????
- 怎麼在ajax外邊使用ajax裡面在後端獲取的資料後端
- Steam好評97%、TapTap 9.9分,國內獸人推理遊戲是怎麼做出來的?APT遊戲
- 請問一下在hibernate裡面多表關聯查詢是怎麼實現的?
- One Order行專案裡Item Category是怎麼計算出來的Go
- [全程建模]uml裡面畫時序圖時,邊界類總是畫在控制類的左邊嗎時序圖
- 在yazd論壇裡面怎麼解決中文問題?
- 這款被譽為品類祖師爺的FPS遊戲,當年是怎麼做出來的?遊戲
- 延時佇列我在專案裡是怎麼實現的?佇列
- onethink自定義外掛 怎麼在模板裡面使用模板的繼承?繼承
- 真的有人把“彈窗廣告”裡的遊戲做出來了!遊戲
- 漫畫:軟體是這樣做出來的
- Linux 怎麼把自己寫的指令碼新增到服務裡面,即可以使用service命令來呼叫Linux指令碼
- 對VR來說, 眼球追蹤技術在裡面到底是一個什麼角色?VR
- sendmail的log裡面maybeforged是什麼意思?(轉)AI
- 手機裡面儲存好的影片怎麼裁剪畫面尺寸?
- 多端融合,3D畫面,未來的頁遊市場到底應該怎麼闖?3D