圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

機器之心專欄

作者:王華民(凌迪科技Style3D首席科學家兼凌迪研究院院長)

最近一段時間,數字人、元宇宙(metaverse)、雲遊戲等新概念變得異常炙手可熱。很多圈外人士對此興奮不已,覺得科幻電影中的場景馬上就要實現了。可很少有人會指出,在通往虛擬未來的道路上其實還有一塊絆腳石:實時物理模擬。本文為王華民教授結合自己的研究對實時物理模擬的一些看法。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

不管是圖形學圈內還是圈外,實時的重要性一直缺乏足夠認識。

長期以來,圈記憶體在著一個誤解:實時技術應該留給工業界開發。不少人覺得實時技術無非是把非實時技術最佳化一下。這種誤解造成了圖形學今天的尷尬局面。

一方面,非實時技術的應用基本僅在後期視效,而這一塊已相當飽和。另一方面,大量亟需實時技術的應用,如高質量VR,數字人、虛擬試衣、虛擬手術等等,卻遲遲無法落地。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

隨著 NVIDIA RTX 方案的推出,實時渲染的問題已經逐漸解決。相比之下,實時物理模擬變得非常重要。和渲染不同,模擬的多樣性決定了實時模擬無法單純依賴硬體解決。RTX的加速結構也只能解決一小部分模擬問題。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

過去

二十年前,當我跨入圖形學圈的時候,是不存在物理模擬這個概念的。當時模擬的主要應用是製作電影特效。而實時物理模擬被認為是mission impossible。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

加勒比海盜:世界盡頭(2007)中的漩渦效果,由 ILM 的 Frank Lossaso-Petterson 利用斯坦福大學的 PhysBAM 物理模擬引擎完成。Frank 與本文作者是斯坦福的同研究組同學。

從技術上講,物理模擬可以劃分為流體模擬和形變體模擬兩大類。這樣的劃分不太嚴格,但形變體模擬,包括彈性體模擬、布料模擬、頭髮模擬等等,有很多的共同之處。這與流體模擬是不太一樣的。這與流體模擬有很大不同。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

與流體相比,形變體更加常見,應用的範圍也更加廣闊。讀博期間(2004 年 - 2009 年),我主要研究的是流體。畢業以後,我逐漸意識到形變體的重要性,改為研究形變體。

早期的實時物理模擬技術非常簡陋。很多時候需要犧牲模擬質量或者物理正確性。

回過頭來看,Projective Dynamics (SIGGRAPH 2014) 是一篇非常重要的論文。它的重要性不在於提出的技術本身,而在於讓很多人意識到物理模擬與非線性最佳化之間的相關性。從此大家的思路被打開了。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

以此出發,包括我們在內的各個研究團隊不斷提升形變體模擬的效率,使得新一代的物理模擬引擎越來越快。

值得一提的是,我們團隊主要研究 GPU 上的物理模擬。和 CPU 相比,GPU 的並行能力更加出眾。我們的模擬引擎的表現也更加出眾。

與此同時,我們的模擬演算法也需要適配GPU硬體的並行特性。想直接把CPU上的技術搬上GPU是很難成功的。

現在

時至今日,我覺得高質量的實時形變體模擬已經部分可行了。

首先說說遊戲。遊戲裡使用的形變體模擬大多以 position-based dynamics (PBD) 技術為主。一個典型的例項是 NVIDIA 的 NvCloth。作為一個十多年舊的技術,PBD依舊活躍在今天,其實有著深刻的原因。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

一個最主要的原因在於現如今很多遊戲需要考慮到跨平臺,特別是移動端的的執行效率。而在一個遊戲中,留給物理模擬的資源非常有限。對於模擬演算法而言,記憶體訪問通常會導致很大的計算成本。像PBD這樣缺乏物理意義的演算法就顯得廉價且高效。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

PBD 的缺點也很明顯。當模擬需要的網格規模變大(比如超過 1024 個頂點),PBD 的效率就不再那麼優秀了。

遺憾的是,目前似乎並沒有比 PBD 更適合遊戲的實時模擬方法。如何為遊戲提供高質量實時模擬將會是一個很重要的難題。

倘若我們把硬體資源的限制放寬些,允許模擬引擎可以完全使用最新的 GPU,那現狀還是比較樂觀的。

比如,我們 2016 年的工作,已經能在 GeForce GTX TITAN X 上實時模擬近 6 萬個四面體網格的超彈性效果 (hyperelasticity)。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

一條被拉得扭曲的龍。

而今年(2021)我們在 SIGGRAPH 上展示的工作,更是能夠在 2080Ti 上實時模擬一件有著 11 萬個三角形的襯衫。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

形變體模擬的開發主要有兩個技術門檻:運動求解(dynamics solver)與碰撞處理(collision handling)。在人體組織、肌肉等需要四面體網格模擬的場景中,運動求解通常是計算開銷的主要來源。而對於服裝、頭髮等模擬而言,碰撞處理尤為重要。

如何安全、穩定、高效地處理自碰撞,是所有形變體模擬引擎繞不開的問題。

需要提到的一點。大多數非實時碰撞處理技術無法在GPU上有效並行。因此,我們的團隊最近把大量的精力放在利用GPU進行高效碰撞處理上。我們今年的工作將會是一個重要的開端。

未來

在不久的將來,GPU 毫無疑問會越來越快。

但我們不能單純把實時模擬寄希望於硬體的提升上。過去,實時模擬技術的發展同時依賴於硬體的提升與演算法的支援。未來,我們同樣需要開發更高效、更匹配硬體的模擬演算法,來實現更高質量的物理模擬。

我覺得,多重網格(multigrid)

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

多 GPU 並行

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

等等,都會是值得研究的方向。

事實上,我最近在 SIGGRAPH 2021 發表的工作,已經可以以一秒一幀的效率模擬一千萬個三角形的服裝了。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

對於流體,我其實特別喜歡基於各種波的實時水面模擬演算法。我之前在佐治亞理工的同學,現在在奧地利IST的Chris Wojtan教授就做過很多這方面研究。當然,流體的表現形式太多樣了。如果想實時模擬大規模的水花四濺還需要更多的工作。

圖形學的未來:投身業界、布料模擬大牛王華民談實時模擬前世今生

以假亂真的實時模擬效果出現的那天,不會太遙遠。

作者簡介:

王華民,俄亥俄州立大學終身教授,四屆 SIGGRAPH 技術論文委員會委員,公認的世界級圖形學科學家。他還是凌迪科技 Style3D 首席科學家兼凌迪研究院院長。他曾以唯一作者身份獨立完成四篇 SIGGRAPH(全球規模最大、影響最大的圖形學會議)論文。王華民的論文也屢屢被指定為斯坦福、UC 伯克利等名校圖形學課程的參考文獻。

他的學生遍佈知名大廠,從矽谷的 Google、Facebook、Adobe,到國內的阿里、位元組、百度等圖形和模擬開發領域的重要崗位,都有他曾授業解惑的門徒。業內流傳:如果你研究布料模擬,就不可能沒讀過王華民教授的論文。