创作一个数字人,总共分几步?(上)
今年,由Unity Demo團隊傾力打造的實時渲染短片《異教徒》實力收割了一大波好評,Unity也因此成為了大家口中“被游戲耽誤的影視公司。”
上個月,我們與大家分享了Unity Demo Team的3D任務/環境藝術家Plamen‘Paco’ Tamnev對《異教徒》環境美術的創作詳解(點擊回看)。這次,我們將為大家深入解讀《異教徒》主角Gawain的創作過程。
?
《異教徒》編劇兼導演Veselin Efremov表示:“為了創造短短幾分鐘的電影級視覺效果,我們需要從歷史、人物、政治、經濟等方面從零構建起一個完整的世界。這點是我們在創作中一直秉承的理念,每一次展示,都只是對一個宏大世界的一瞥。此次我們探索了一種不是基于視覺而是基于觸摸的人機界面,這是一種純粹的觸覺體驗。這種體驗已經在一定程度上應用在了在智能手表和盲文字母表中,我們此次應用于Gawain(異教徒主角)的手臂裝置將其帶入新的高度。不基于單個機箱而是由復合半獨立元件組成的機器人技術也很有趣,這些元件可以根據手頭的任務組裝成不同的構造。”
選角與制片
首先,我們委托了一家經紀公司來選擇演員。戲劇演員Jake Fairbrother被選中擔任這一角色,這是他第一個數字影片角色。
我們先后共進行了4次數據收集,第一次是在4D Max收集了演員的全身掃描數據;第二次是在位于倫敦外的InfiniteRealities工作室收集了演員的3D面部掃描和第一批4D動作表演的數據;第三次,在位于Sofia的動作捕捉工作室收集了更多動作表演數據;最后,為了展示更完美的影片效果,我們又回到Infinite Realities工作室制作額外的4D表演。所有的聲音都是在倫敦的SideUK工作室錄制的。
藝術概念
?
?
《異教徒》項目開始于Georgi Simeonov的一些早期概念設計圖,在與導演Veselin Efremov討論后,他制作了幾種不同風格的人物。Gawain手中的手提箱作為故事中的基本元素,所以幾乎在所有版本中都有呈現。
?
?
在第二階段,Geroge和導演又討論了概念圖中哪些部分比較合適,哪些概念需要進一步拓展。這里比較有意思的一點是Gawain服裝設計中加入了一點中世紀騎士的元素。
?
?
Gawain概念圖的最終版
頭部
?
?
最終影片中的Gawain
《異教徒》建模師PLAMEN表示:“在收到Infinite Realities的最初掃描數據和清理過的無表情面部模型后,我們與動畫導演Krasimir Nechevski開會討論了制作服裝和動畫時需要明確的技術細節,例如面部的UV貼圖,不同紋理的分割方式與位置,頭部與身體的分割點。導演自開始就強調頭部與身體分割點的重要性,他希望在面部特寫中看到盡可能多的脖子及周圍區域。”
不同部位的紋理有不同的分辨率,身體和腿部紋理分辨率遠比面部紋理要低,因為兩者并不會在鏡頭中長時間出現。在確定方向后,我們調整了掃描數據,并將其轉移到了新的模型上。
眼睛
?
?
眼部經過了許多次的打磨和微調,導演Vess為我們提供了很多創意指導和改動的方向,指出了許多可以改進的地方。
眼部動畫技術由Lasse Pedersen和Nicolas Brancaccio聯手完成。角膜、虹膜和鞏膜使用了同一個網格,而眼睛效果則由Unity中的著色器來控制。在眼瞼周圍的網格主要是讓眼球和眼瞼的過渡更為平滑,也是眼睛的瞼裂。
?
?
該網格用于模糊兩者間的法線貼圖,為眼睛添加濕潤感
部分著色器控制示例,眼睛可直接使用AO,不必再使用烘焙的陰影網格來做出被遮蓋的效果。
牙齒
本文中所提到的技術棧、著色器和所有工具都可在最近發布的Digital Human資源包中找到。我們正在攥寫深入介紹皮膚附著系統、著色器及其它技術細節的博文,請持續關注。
?
這是在導入Unity編輯器之前,Marmoset Toolbag 3中成品資源的截圖。在制作紋理時,用不同光照條件測試材質效果會更快捷。
?
?
人物的UV貼圖。我在此處花費了大量精力,讓4K紋理能有盡可能多的細節。
面部表情
動畫導演Krasimir:“開發一個數字人類的制作流程是制作這部影片的主要目標,也是團隊的主要成就。在先前制作機器人或恐怖的怪物時我們盡量避免涉及數字人類,但是現在我們覺得時機已經成熟。制作中有許多的困難——皮膚、頭發、牙齒和眼睛的著色都是互不相通且極具挑戰的領域,但制作數字人類最為困難的部分應該是重現面部運動與微表情。如果處理不當就會導致觀眾感到不適,這就是著名的‘恐怖谷’效應。”
為人物臉部添加動畫的方法有很多——Blendshape骨架、4D動畫(帶體積的視頻)、機器學習、模擬,它們都各有優劣,而我們選擇了一種非傳統的方法。這里我將按順序來解釋方法背后的考慮及其流程。總結起來,我們直接使用了4D動畫,僅添加骨架上的褶皺貼圖(Wrinkle Map)到模型上。
值得注意的是,最近機器學習在處理2D影像、制作逼真的表情動畫方面有了很大的進步,有幾部作品通過合成3D面部表演都達到了非常出色的效果。可以說ML將在未來被用于解決面部表演的制作問題。ML中最重要的步驟是搜集大量的數據,4D采樣數據必須干凈,才能借助技術實現完全合成的面部表演。
?
?
首先,我們需要驗證這個概念。我們使用該方法制作了一個簡短的動畫片段,如果不合適就拋棄這種動畫。QQ賬號出售Infinite Realities開發的4D動作捕捉系統已經有了不小的成果,我們與工作室合作錄制了幾段早期片段。
?
?
雖然系統制作出的動畫的確很好,但使用4D依舊有一些挑戰。首先,由于方法有些許缺陷,掃描數據有些許的瑕疵。由于頭發或可見度問題,部分皮膚表面未能被捕捉,圖像會有許多微小的噪點,反射性表面會有很多瑕疵,攝制時需要頭部穩定,幀之間的網格缺乏連貫性。
?
?
未處理的網格 4D捕捉而來的紋理
上方可以看到未經處理、用點表示的數據是什么樣的。體積視頻每一幀都由大量獨特的三角形構成。
幸好這里已經有現成的解決方案——由Russian3DScanner開發的Warp3D軟件。軟件可利用基于線條的Blendshape制作連貫的網格。在最初嘗試時,我們在Wrap3D中手動清除了許多數據,軟件會在演員面部加上一整套點作為標記,再將網格套用到所有幀上,形成一套連貫的網格。
?
?
光有點作為標記并不夠,人工設定點的位置難免出現錯誤。為此,Wrap3D中功能可借助光流和紋理分析來讓連續幀的像素互相匹配。在每幀上投射紋理后,我們就得到了一套帶有相同拓撲的網格流水線。在解決這個問題后,我們還需處理噪點一類的圖像瑕疵,將正常的網格移植到瑕疵處。4D數據處理的首席編程Lasse Pedersen開發了一套在Unity中使用的數據導入和編輯工具。
雖然結果尚可,但圖像經過處理、降噪后的圖像變得過于平滑,缺少了像毛孔這類微型細節。我們認為可以通過添加更多動畫細節來進一步提升圖像質量。為此,我們使用了SnappersTech開發的FACS骨架,其拓撲與我們的4D數據相同。Lasse開發的解算器成功地在骨架上給褶皺貼圖添加了動畫,實現了毛孔級別的細節。下方是實驗后期的一個例子。
隨后網格數據用DCC清理完畢。Lasse開發的工具有許多的潛力和用例,他本人正攥寫相關的深度博文,請持續關注。所有工具都包括在了最近發布的Digital Human資源包中。
在項目第一部分的完成期限前,我有幸在某場會議上遇到了Wrap3D的開發者們,并與之達成了合作。合作非常成功,他們清理后的4D數據運行非常迅速、質量非常高。
?
結果雖然并不完美,但也沒有“恐怖谷”的感覺,因此我們更加確定可以沿著這條路走下去。在測試結束、驗證管線后,我們決定繼續與Infinite Realities和Russian3DScanner合作,使用處理后的4D數據在影片的第二部分加入更多的面部表演和特寫。而兩家合作伙伴也在不斷地改進工具和設備,產出質量更高的成果。
?
?
?
為了用褶皺貼圖制作出最終效果,需要有一個非常細致的面部骨架。我們起初計劃在遠離攝像機的位置使用骨架制作面部表演。
FACS骨架是制作面部表演的主流方案。方案源自1978年Paul Ekman開發的FACS(Facial Action Coding System,面部動作編程系統),是系統化表情分類的常見標準系統,也是精神病學家和動畫師的實用工具。FACS骨架糅合上百個夸張表情的Blendshape作為AU(Action Unit,動作單元),每個單元發生位移都會牽動近乎所有的面部肌肉。這些形狀加入動畫后通過所謂的矯正或間隔Blendshape來改正錯誤的動畫。接著HMC(頭戴攝像機)捕捉演員的面部表演,來控制復雜的模型系統、驅動相應的Blendshape。
?
在制作眼睛動畫方面,Christian Kardach開發了一款使用計算機視覺的工具,來追蹤Maya渲染圖中的虹膜。
4D還存在面部動作與身體動作的結合難題。捕捉高質量面部表演的設備體積巨大,捕捉范圍有限,拍攝時演員需要坐著不動,頭部的可動范圍也很有限。而在隨后拍攝動作捕捉時,表演需要盡可能地契合面部動作。只可惜目前市面上并不存在可以借助頭戴設備捕捉這種高清4D動畫的技術。
《異教徒》數字人類Gawain的頭部及面部制作細節分享結束,下一期,我們會為大家揭秘Gawain的身體以及衣物制作的幕后。
總結
以上是生活随笔為你收集整理的创作一个数字人,总共分几步?(上)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 有关像素动作游戏《Resolutiion
- 下一篇: 创作一个数字人,总共分几步?(下)