2016年8月11日 星期四

即時運算短片ADAM - 即時影片的資源建立

作者:PLAMEN TAMNEV 原文

本文作者Plamen (Paco) Tamnev,負責Adam Demo裡許多Asset資源的製作。Plamen先後在Black Sea Studios和Crytek擔任角色美術一職,之後加入Unity的Demo團隊,投身於Real Time Demo的製作,例如AdamThe Blacksmith,以及一些小的環境類Demo像是(Viking Village, Bedroom, Courtyard)。


資源建立一開始是為了想要更清楚的了解專案的目標和價值:世界觀-即我們所敘述的故事,以及如何設計人物能有助於傳達理念。關於這點可以閱讀上一篇Georgi Simeonov的Adam設計流程文章。 
我和Georgi及我們的導演Veselin Efremov在角色與環境方面有很密切的合作。首先我們要搞定的工作是整體比例,細節的分布及訂出一個明確的輪廓。我們使用一種迭代的工作方式,從幾何模型開始慢慢換成精細的模型。 

Unity 5 編輯器中的螢幕截圖


Adam的預覽與功能(Adam的創造過程)


創造Adam是有一點挑戰性的,因為我們要依照概念設定中的外觀與構想具現化一個真實的“他”。他有非常多的行為動作,而且還有很多對著他的臉部特寫。
Adam的另外一個用處是作為同類群體的基礎樣板。因為故事設定的緣故,我們另外兩個主要角色自然地也使用了Adam身上的一些零件。在模型製作階段我必須要把這些細節牢記在心,創造Adam幾乎就像在製造某種靈活可重用的模型裝備一樣。
我們從一個角色粗模開始著手設計並不斷更新這個角色精細度。角色在我和動作導演、產品設計師之間來回修改了非常多次,有些結果開始看起來很不錯,但後期為了改進角色的行為或外觀,許多東西都需要調整甚至全部重做。

製作中的Adam高模VRay渲染圖


製作中的Adam高模VRay渲染圖


這些是我在進入低模製作階段之前對Adam進行的複雜運動所做的功能渲染預覽。手臂是複雜的部分之一,有著大量的細節與層次,許多微小的部件還需要能夠合理的移動與滑動。雖然在最終的影片中不會看清楚這些所有的細節,但它們對於確定正確比例是很有幫助的,同時還能讓我們在製作細節有些新想法。

製作中的Adam高模VRay渲染圖

預覽渲染還可以作為材質使用的參考。透過這方式,在進入低模及材質製作階段前,就能夠快速預覽帶有基礎材質與顏色的高模,還能爭取一些時間做些強化修改。我大部分使用的是ZBrush的自動UV處理,之後再設定VRay 磁磚貼圖來產生粗糙度與漫反射率。

製作中的Adam高模VRay渲染圖


對於包裹材質,我先使用Marvelous Designer工具做基礎處理。它能快速地展現出不錯的效果,還能很方便將資料導入到ZBrush中進行細節調整,達到令人滿意的效果。

在Marvelous Designer中進行包裹材質測試的截圖

在3DS Max抓下用來檢討模型反饋的一張圖。這時候正是我們最後確定是否還需要做重大更改或增加要素,之後將開始打磨模型細節並著手以高模為基礎的低模


在3DS Max抓下的低模角色分解圖。此時已經可以用來烘焙各種貼圖(法線、遮擋、曲率等等)以及紋理圖了


材質


Adam的貼圖我用了Substance Painter 2來製作。他的頭、身體和四肢分別用了不同的獨立貼圖。此外我還直接在Painter中為法線加了另一層細節。

低模在Marmoset Toolbag 2中的最初紋理樣子(下面會解釋)

這個階段我針對數值與老化效果的分配進行了一些測試。在這個例子中,金屬的老化效果有些過頭了,有些顏色和飽和度都有點多。修正了這些問題後我繼續優化細節,並增加表面裂痕與標記。

Substance Painter 2中對手臂進行紋理貼圖過程的截圖


Substance Painter 2包裹材質的初期階段


Substance Painter 2中對破碎面具進行材質貼圖的截圖


在3DS Max中UV展開前的手臂低模截圖


LOD(Level of Detail)0級時的Adam低模線框圖


Marmoset Toolbag 2 最終確認低模預覽圖


Marmoset Toolbag 2 最終確認低模預覽圖

Marmoset Toolbag 2 最終確認低模預覽圖


人群與變化


製作Adam另一個挑戰是我們必須即時產生一群囚犯,其中一些會離攝影機很近 - 在某些鏡頭中甚至比Adam還近。我們肯定不會對所有人物都使用標準的Adam角色模型,所以必須根據與攝影機的距離使用相對應的LOD模型(根據不同距離更換不同精度的模型)。

Marmoset Toolbag 2 中人群的LOD預覽

30K頂點面數的模型用於離攝影機最近的角色,而900個頂點的模型被用於最遠的背景角色。對於每個LOD等級來說,我們必須根據每個LOD模型的距離來使用儘可能少的材質ID與貼圖解析度。

此外我們還想讓不同的囚犯有不同的特徵,因此我製作了一個穿好包裝的Adam作為基礎,然後用一個自訂Shader透過一個灰度遮罩來表現各種不同包裹的分佈。

Marmoset Toolbag 2 最後確認的人群差異貼圖預覽圖


Unity 5 編輯器中的截圖


Adam的面具



Adam的面具經過了好幾次反覆調整,因為我們想找到一種最符合我們故事所想表現的設計。面具材質表面要看起來像某種3D列印材料,不但有部分殘缺和層次感,還要有些透明效果。

早期做的一些面具實驗品,最後決定使用的是最下面那個。方向確定後就進入了細修階段


最初的一個預覽模型比最終使用的版本更像真實的人臉。但經過數次反覆調整後,導演Vess認為他想要的是一張感覺是藏在面具之後的臉,而不是真臉。因此我們對它進行簡化直到所有的人類臉部特徵全部消失。因為一開始我採用ZBrush,這讓我可以以用比較非破壞性的方式進行工作 - 所有的東西都在不同的層裡,同時使用噪點產生器以及遮罩來嘗試不同程度的老化效果後根據需要進行混合。



我們的視覺特效美術Zdravko Pavlov對破碎的面具也做了一些嘗試,他使用了完整的面具和最終版本的UV貼圖來保持面具的一致性。在3DS Max的Bullet物理外掛幫助下,他在面具上做了多個破壞效果以供選擇。當我們選好想要的效果後,我將它作為基礎增加了一些變化及殘缺處理。因為它已經有完整面具的UV貼圖,所以我只需要為新增的幾何體加入UV即可,而這部分UV空間也已在原先的貼圖中保留。隨後將它導入Substance Painter,進行最後的細節修改與材質處理工作。

Marmoset Toolbag 2中的截圖


Unity 5 編輯器中的截圖


Sebastian, Lu, 警衛


Jonas Törnqvist, Vincent Joyau, 以及Sergey Samuilov幫我們設計了Demo中的其他角色。

Unity 5 編輯器中角色Sebastian與Lu的螢幕截圖(Jonas Törnqvist, Vincent Joyau)


在Marmoset Toolbag 2中Sebastian半成品的截圖(Jonas Törnqvist, Vincent Joyau)


在Marmoset Toolbag 2中Lu半成品的截圖(Jonas Törnqvist, Vincent Joyau)

為了保持世界觀的連貫與一致,Sebastian與Lu的模型使用了Adam模型中的部分身體零件。


Unity 5 編輯器中警衛角色的螢幕截圖((Sergey Samuilov)


環境藝術

內部場景
我們為內部場景製作了一些獨立的物體,例如門、管子、床等等,以及一些只需要磁磚貼圖以及幾何標誌的物件。

Unity 5 編輯器中牢房內景的截圖


Substance Painter 2 中牢房管子的截圖


Substance Painter 2 中牢房門的截圖(基於Georgi Simeonov的高模)


Substance Painter 2 中牢房地面的截圖(基於Myles Lambert的模型)


Substance Painter 2 中牢房地面的截圖


裝飾道具

"待撕開的"囚犯床鋪模型VRay參考圖


對囚犯床鋪的設定如下:它們是存放囚犯身體的裝置,且必須使用與囚犯包裹物相似的材質製作。我使用Marvelous Designer製作了基礎物件後將它們導入ZBrush進行最終細節處理。我製作了兩個模型,一個是囚犯仍在其中的,一個是已開封的。在最終的影片中,我們只使用了後者。

Marmoset Toolbag 2中的參考截圖


Marmoset Toolbag 2 中最終確認版囚犯床鋪截圖


Substance Painter 2 中在開場中禁錮Adam的金屬架


開場中連接到Adam背部的電纜接合管物件。Marmoset Toolbag 2預覽圖(基於Zdravko Pavlov的高模)

外部場景

對於影片的外場,我們知道離攝像機很近的位置會有一些非常大的物體。因此,我們在一個基礎貼圖上使用了許多磁磚貼圖與貼花,以便這些物體在不同的鏡頭中能獲得所需的解析度。對於磁磚貼圖,我們主要使用了Quixel Megascans的資料,並使用自訂灰度遮罩將不同貼圖進行混合,增加多樣性。

Unity 5編輯器中的截圖


Unity 5編輯器中的截圖

這是一個完成的城牆範例,它使用了Substance Painter加工的基本材質及遮罩,Unity中的細節貼圖陣列(detail texture arrays),以及幾何貼圖(geometry decals),最後得到了我們在大型場景所需的外觀及解析度。

平臺金屬部分的模型由Tibor Toth製作


Demo裡許多分鏡都有看到的混凝土平台 - Unity 5 編輯器中的截圖

對於混凝土平台地基部分,我使用了類似於城牆製作的方法:

  • 漫反射中使用基礎貼圖
  • Quixel Megascans製作的極端特寫細節(以磁磚貼圖的方式用在Unity標準著色器中)
  • 最後增加破損模型表現混凝土的風化邊緣


Unity 5 編輯器截圖。高速公路的模型由Ayi Sanchez製作,細節及貼圖由Tihomir Nyagolov加上


我們的Demo團隊希望能盡可能分享我們的經驗與專業知識,展現更多的內容。我們已經看到不少人在使用我們之前Demo中的資源用於測試、原型製作、成果展示、教學或研究論文等 , 我們很高興我們的作品在不同的領域大放異彩。

所以,我們正準備將“Adam”中大部分資源發佈到Asset Store,目標時間是Q3秋季。雖然有些晚,但是敬請各位理解 ,畢竟我們團隊的3D美術只有我一人。

沒有留言:

張貼留言

關於我自己

我的相片
Unity台灣官方部落格 請上Facebook搜尋Unity Taiwan取得Unity中文的最新資訊