Unity Wētā Tools beta測(cè)試開放注冊(cè):探索《阿凡達(dá):水之道》背后的水之技術(shù)

本文首發(fā)于Unity中文社區(qū)專欄,原文鏈接:
https://developer.unity.cn/projects/6425283eedbc2a41d1deca4b

Wētā Digital(現(xiàn)已并入U(xiǎn)nity)開發(fā)的工具和解決方案讓《阿凡達(dá):水之道》的世界生動(dòng)地呈現(xiàn)在了觀眾面前。在本篇文章中,我們將探討“水之道”背后的水體CGI技術(shù)。若您有興趣第一時(shí)間上手相同的工具,可以前往我們的網(wǎng)站(https://create.unity.com/weta-digital-beta-program-sign-up)注冊(cè)參加Unity Wētā Tools的beta測(cè)試。

詹姆斯·卡梅隆(James Cameron)對(duì)水并不陌生。除了《泰坦尼克號(hào)》,他還曾在2012年打破了單人潛水的記錄,駕駛一艘潛水艇下潛到馬里亞納海溝近11公里深的海底,地球上海拔最低的地方。正如他在2014年的紀(jì)錄片《深海挑戰(zhàn)3D》(Deepsea Challenge 3D)里說(shuō)的:“在水下你能感受到大自然強(qiáng)大的想象力要比我們的偉大得多?!?/span>
若真是如此,那么卡梅隆靠自己的想象呈現(xiàn)出整個(gè)潘多拉星球及其壯美的風(fēng)景絕對(duì)是一件了不起的事。

Unity Wētā Tools:水之特攻隊(duì)
卡梅隆在續(xù)集里設(shè)想了一片由水生的Metkayina族建立的礁石村,以及占據(jù)龐大篇幅的水中場(chǎng)景。實(shí)現(xiàn)這些想法需要用到大量的視覺特效。
用于制作這些視覺特效(包括獲獎(jiǎng)的水體效果)的工具和解決方案都是由Wētā Digital——Unity旗下部門開發(fā)的。
為了讓角色與水的互動(dòng)盡可能逼真,Unity和Wētā水體模擬專家Alexey Stomakhin、Steve Lesser、Joel Wretborn和Sean Flynn組成了一支“水之特攻隊(duì)”。團(tuán)隊(duì)的水體工具集最近贏得了視覺效果協(xié)會(huì)(VES)獎(jiǎng)的新興技術(shù)獎(jiǎng),受到了業(yè)界的認(rèn)可。
團(tuán)隊(duì)極度關(guān)重視細(xì)節(jié),與新西蘭的國(guó)家水與大氣研究學(xué)會(huì)(NIWA)合作探索了制作CGI水體的最佳方法,將潮汐、風(fēng)力和海床對(duì)水生環(huán)境的影響納入了考慮范圍。

水體工具集
《阿凡達(dá):水之道》有2225個(gè)鏡頭使用了水體效果,部分效果花了整整八天才模擬出想要的高分辨率圖像。
有許多場(chǎng)景還需要一鏡拍攝水與超過(guò)50種生物的互動(dòng),既包含占據(jù)大片水域的巨型生物,又有皮膚上薄如一層膜的水效果,如此規(guī)模為模擬的精確性帶來(lái)了挑戰(zhàn)。
創(chuàng)建一個(gè)單一的水體系統(tǒng)從運(yùn)算量上來(lái)說(shuō)過(guò)于龐大,因此團(tuán)隊(duì)開發(fā)了一套獨(dú)特的解算器來(lái)盡可能降低運(yùn)算時(shí)間。
Loki
“Loki水狀態(tài)機(jī)在交付影片龐大的水鏡頭上起到了關(guān)鍵作用。在典型的使用大量視覺特效的電影中,也少有這種復(fù)雜程度的水效果鏡頭,就算要做也需要依靠大量資深藝術(shù)家迭代數(shù)次、建立多條渲染通道。然而,狀態(tài)機(jī)方法只需要一條渲染通道就能產(chǎn)出非常不錯(cuò)的成果,就算是剛?cè)胄械奶匦囆g(shù)家也能輕松駕馭?!薄猄ean Flynn,模擬負(fù)責(zé)人,Unity x Wētā Digital
大部分的水體工具都基于Wētā專利性的模擬框架“Loki”打造。該技術(shù)可以解算多種水體狀態(tài),包括程序化的波浪(water waves)、大型水體(bulk water)、噴霧(spray)、水霧(mist)、特寫氣泡(hero bubbles)、擴(kuò)散氣泡(diffuse bubbles)、泡沫(foam)、毛細(xì)表面波(capillary surface waves)、水膜(thin film)和殘余濕度(residual wetness)。
狀態(tài)機(jī)
Loki狀態(tài)機(jī)是一套含氣流噴灑的系統(tǒng),其中包含了大部分解算器。水的狀態(tài)還帶有周圍空氣的狀態(tài),狀態(tài)間的轉(zhuǎn)換會(huì)保留水的質(zhì)量和動(dòng)力。
Loki狀態(tài)機(jī)并不會(huì)采用單獨(dú)一種解算方法,而是同時(shí)運(yùn)行多種解算器。每一種解算器都能在相應(yīng)的狀態(tài)下產(chǎn)生優(yōu)化后的細(xì)節(jié),包括大型水體、噴霧和水霧,不僅高效地模擬大型水體,還能捕捉到每一滴噴霧和水霧的互動(dòng)。
所有狀態(tài),包括周圍空氣的模擬都由一條模擬通道完成。每個(gè)解算器都能正確地運(yùn)算出相互間的物理互動(dòng),營(yíng)造出電影里那般自然又逼真的水體互動(dòng)。

水膜與水滴模擬
在SIGGRAPH 2019期間,我們展示了一種在角色上模擬近距離水體互動(dòng)的實(shí)用方法,將重點(diǎn)放在了水體流過(guò)皮膚時(shí)的表面張力和附著效果。團(tuán)隊(duì)以《阿麗塔:戰(zhàn)斗天使》(同樣由卡梅隆擔(dān)任編?。┑膱?chǎng)景為例,用一層水覆蓋了角色全身,展示了效果精細(xì)的分辨率(可精細(xì)至幾毫米)和優(yōu)秀的性能。
該方法采用了“胞中粒子法”(FLIP/APIC)解算技術(shù)來(lái)捕捉小規(guī)模的“水體-固體”互動(dòng)?!栋⒎策_(dá):水之道》進(jìn)一步拓展了這項(xiàng)技術(shù),用于處理角色“出水芙蓉”的場(chǎng)景。
“此種解決方案并不便宜,我們需要以次毫米級(jí)模擬水的動(dòng)態(tài),模擬成果通常要花費(fèi)數(shù)天的運(yùn)算。只有保證解算技術(shù)的擴(kuò)展性、穩(wěn)固性和可靠性,才能開箱就產(chǎn)出符合物理的圖像,讓藝術(shù)家不必做太多調(diào)整?!薄狝lexey Stomakhin,首席研究工程師,Unity x Wētā Digital

水下氣泡與耦合
為了實(shí)現(xiàn)令人信服的水下動(dòng)態(tài)(比如《阿凡達(dá):水之道》角色在水下的場(chǎng)景),團(tuán)隊(duì)使用了一條圍繞關(guān)注點(diǎn)的水流來(lái)模擬水下氣泡。氣泡本身以兩部分呈現(xiàn):特寫和擴(kuò)散。
特寫部分捕捉了帶破裂和擾流現(xiàn)象的氣泡本身,在一片歐拉網(wǎng)格(Eulerian grid)上用兩段式的納維-斯托克斯(Navier-Stokes)算式解算,氣流階段使用FLIP/APIC粒子表示氣泡,以保存氣泡體積、精確跟蹤接觸面。
擴(kuò)散部分則以小于歐拉網(wǎng)格的分辨率來(lái)捕捉小型氣泡。團(tuán)隊(duì)開發(fā)了一種新技術(shù)來(lái)把散開的氣泡粒子配對(duì)到大片液體上,同樣的技術(shù)還能用于沙礫、頭發(fā)、衣物等其他半浸入的多孔物體。
波浪曲線與表面模擬
為了提升水面模擬的圖像細(xì)節(jié),Wētā Digital和IST Austria的團(tuán)隊(duì)開發(fā)了一種新的后處理方法,以水體模擬作為輸入,在此基礎(chǔ)上模擬出精細(xì)的拉格朗日水波(Lagrangian water waves),從表面上提升分辨率。
團(tuán)隊(duì)還將線性波浪理論拓展應(yīng)用到了非平面的水域,水域帶有拉格朗日波包(wave packet),波包被捆綁到幾條樣條曲線上,曲線會(huì)隨流體表面的變化而演變。此種方法所產(chǎn)出的高頻率漣漪帶有向外擴(kuò)散的類波浪現(xiàn)象,還可根據(jù)底層的流體模擬進(jìn)行定制。

用氣泡和浮沫模擬逼真的白色海水
團(tuán)隊(duì)開發(fā)了一種逼真的水下氣泡模擬方法:氣泡由水流帶動(dòng),在浮到水面時(shí)轉(zhuǎn)化成浮沫。這一技術(shù)在《阿凡達(dá):水之道》的每一處水體場(chǎng)景都發(fā)揮了重要作用。
基于網(wǎng)格的納維-斯托克斯(Navier-Stokes)模擬程序(一般只用在大片流體的動(dòng)作捕捉上)從根本上受到網(wǎng)格分辨率的限制,無(wú)法很好地應(yīng)用到破浪時(shí)產(chǎn)生的噴霧或水霧這類小規(guī)模現(xiàn)象。這些白色的海水通常使用獨(dú)立的拉格朗日粒子進(jìn)行模擬。
“我們白色海水模擬的一個(gè)重要方面就是兩種解算器的互動(dòng):一種基于網(wǎng)格、配有氣泡的流體解算器,以及一種綁定在水面的浮沫SPH解算器。Loki一眼就能看明白的解算器框架使我們能在制作期間建立并維持這些復(fù)雜的系統(tǒng),無(wú)需從零開始開發(fā)新的解算器?!薄狫oel Wretborn,資深研究工程師,Unity x Wētā Digital
當(dāng)今大多數(shù)解算器都會(huì)忽視關(guān)鍵的整體效果:一群氣泡合起來(lái)的浮力更大,上浮速度要比單個(gè)氣泡快,大量聚集的氣泡可以極大地影響水體的運(yùn)動(dòng)。
新技術(shù)從兩個(gè)方面來(lái)模擬氣泡,并考慮了周圍的流體,突破了原先的局限。它能有效地捕捉總的氣泡效果,營(yíng)造出更為連貫的氣泡及流體運(yùn)動(dòng)。氣泡在到達(dá)表面后會(huì)轉(zhuǎn)變成水面上“濕潤(rùn)的”浮沫,并根據(jù)平緩粒子流體動(dòng)力學(xué)(SPH)向外散開,最終產(chǎn)生的白色海水運(yùn)動(dòng)從近處或遠(yuǎn)處拍攝都十分逼真。


“特攻隊(duì)”使用的模擬技術(shù)由Wētā Digital現(xiàn)任和前任員工,以及來(lái)自Wētā FX和多家學(xué)術(shù)機(jī)構(gòu)的合作伙伴們開發(fā)而成,他們是:Alexey Stomakhin、Joel Wretborn、Kevin Blom、Gilles Daviet、Steve Lesser、John Edholm、Noh-Hoon Lee、Eston Schweickart、Xiao Zhai、Sean Flynn、Andrew Moffat、Gary Boyle、Tomas Skrivan、Andreas Soderstron、John Johansson、Christoph Sprenger、Ken Museth和Chris Wojtan。
如果想體驗(yàn)該工具,請(qǐng)?jiān)L問(wèn)如下鏈接,參與 Unity Wētā Tools 的 beta 測(cè)試。
報(bào)名渠道:
https://create.unity.com/weta-digital-beta-program-sign-up