2017年1月20日 星期五

Unity即時運算短片Adam揭秘:場景製作

作者:Mathieu Muller 原文
潤稿:Kelvin Lo

我們去年在GDC上首次展示出即時短片Adam時,相信大家都因為Unity能製作像Adam這種高畫質影片而感到震驚,包含我在內所有的開發者都非常好奇,到底是怎麼做到的? 就讓我現場展示來解釋如何從無到有重現一個Adam場景。

這是我在2016的Unite LA的演講,本文也會做更深入的解說:

資源(Asset)


首先我先問我自己,資源正常情況下看起來應該是如何。當時我和開發小組如火如荼的努力把包含室內外環境和角色資源拆開分裝,以利開發者方便下載研究。

結果就是我把這些資源放到一個空專案時,這些資源看起來和Adam展示時完全不一樣! 那是因為專案必須做一些設定(deferred渲染線性渲染HDR鏡頭設定),還得加一些反射探針(reflection probes)來讓環境有"真實質感"。這是一個學習如何協作PBR資源,瞭解跨行業相容材質的重要性,以及如何使用新的LookDev工具很好的機會。



VFX 特效

Adam的內容是所有視覺效果組合所產生的結果,舉凡粒子特效到頂點暫存動畫,物理動作烘焙以及整個自訂體積霧和照明系統。在Adam-即時影片的VFX特效秘辛一文中,VFX設計師Zdravko Pavlov已經詳盡解釋過了。這些工具也已經公開下載了。

粒子特效:粒子特效使用了內建的Shuriken系統並大量使用了翻書特效(Flipbooks) 。霧的圖像排列是用3DS Max套件: Chaos Group's公司所開發的Phoenix FD做好後用V-Ray算出來的。最初是使用After Effects將他們組合在一起,但是自從Unite LA之後,Adam內部VFX美術開發了VFX toolbox工具並開源。這讓管理和處理圖像排列變得非常容易。最近我們還發佈了火,煙霧以及爆炸排列的資源包


Adam專案裡用來匯入模擬爆衣特效的Alembic匯入套件也可以下載了。開發這個套件的幕後功臣是Unity日本團隊,他們也完成USD匯入/匯出套件,同樣也是免費開源的。



電纜、布料及撕裂效果這些需要複雜的物理模擬,是採用Asset Store裡的CaronteFX套件。在Sebastian的角色包中有一個CaronteFX角色,有完全的烘焙模擬衣物展示。


由Demo團隊的GFX工程師Robert Cupisz開發的體積照明包(volumetric lighting package)也已上架。裡面包含霧化照明(fog lights),軟陰影(soft shadows)以及體積陰影(volumetric shadows),以及大部分室內場景都有用到的噪點和風模擬。更多這方面的細節可以參考Robert在Unite歐洲2016的演說


Lighting 照明


照明可能是決定一個遊戲是否能成為經典的最重要因素。就像電影在拍一個鏡頭時,燈光師會對每一個鏡頭放置不同燈光來獲得最佳的陰影以及光照效果。在我的演講裡我會展示和解釋如何在一個鏡頭擺好燈光。一些鏡頭可以利用不同燈光照明讓牆壁、手臂、手、臉、眼睛、頭部、胸部及身體陰影等獲得很好的照明效果。

由於Unity在Siggraph 2016上發佈了最新即時區域照明技術。Adam團隊也即時採用了這新的研究成果,並實際應用到專案中。區域光源說的是光照不是從一個點發光而是從一個表面發出,這可以產生更真實的光照效果。除了矩形在這些效果中是最明顯最適當能給予銳利光源的形狀。還有一個重要的原因是現實世界中並不存在
點光源,所以我們很難感受它對材質影響,採用區域光源就可以從材質獲得更好的反饋,進而增加照明品質。結合體積照明包裡的PCSS軟陰影、體積陰影、燈管照明和霧燈,我就可以重創完全相同的場景,在幾分鐘內把Adam場景還原。


Post Processing 後製處理


最後,就像所有的電影製作一樣,鏡頭後製特效是電影攝影的核心。在製作Adam的過程中團隊必須處理來自不同來源的各種特效(一般資源電影特效Keijiro效果(註一)、Asset Store或還在alpha版支援移動向量(motion vectors)的Unity TAA等等)來獲得最終的結果。Adam團隊還開發了自己的色調映射(Tonemapping)、顏色分級(color grading)和動態模糊(motion blur)效果。

此外,想要有最好的結果需要設定好正確的排序和正確的特效設定。但要解釋清楚這一切需要花點時間(還好我幾週前的演說有錄下來)。


不看影片也別擔心,我們有發佈了一個後製處理串流工具,美術可以簡單將所需要的特效串在一起(例如:HDR顏色分級)。按幾下滑鼠就可以打開TAA(temporal anti-aliasing)抗鋸齒效果, Adam裡漂亮的柔邊就是它的功勞。加入了動態模糊和景深效果來模擬像是用一台真的相機所拍攝出來的感覺,加上色調映射和顏色分級效果來獲得電影般的質感。

最重要的是將所有的效果集中起來運算,可以用最少的渲染次數來獲得最好的效果,這樣連MacBook Pro 2014上都能夠執行了!


結論

一開始我們要對外展示Adam都要額外準備很多工作,現在任何人都可以用Unity 5.4.1並下載資源包就可以自己處理。


這次我沒有足夠的時間展示,把所有的Adam場景串起來並輸出成影片。首先,大多數的人物和相機動作是用動態捕捉的系統採樣的,由於設備的緣故我只能在演說時展示有骨架與IK的Adam角色。其次,目前Unity的Timeline系統尚在開發階段,相信很快就會公佈了。

註一:Keijiro Takahashi,Unity日本團隊的特效工程師,負責許多後製特效的開發,並製作很多工具開源在Github上。

1 則留言:

關於我自己

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