第一講:數(shù)值積分基礎(chǔ)

現(xiàn)代物理屡贺,本質(zhì)上只包含幾何與材料兩塊的內(nèi)容蠢棱。幾何描述的是物件的空間結(jié)構(gòu),對于給定的幾何結(jié)構(gòu)甩栈,不同的材料對于外界的反應(yīng)是不同的⌒合桑現(xiàn)代物理,不論是剛體軟體流體量没,甚至是量子力學(xué)玉转,本質(zhì)上就是為了將這兩種內(nèi)容分開。

計(jì)算機(jī)動(dòng)畫殴蹄,本質(zhì)上是一種視覺上的體驗(yàn)究抓,通過視覺暫留效應(yīng)用離散的圖片模擬出連續(xù)的動(dòng)畫效果猾担。

最早的動(dòng)畫可以追溯到公元前三千年,人們發(fā)現(xiàn)的一個(gè)陶罐上面通過手繪多個(gè)圖片刺下,將多個(gè)圖片串聯(lián)起來就構(gòu)成了一只山羊跳起來吃樹葉的動(dòng)畫绑嘹,而這種通過序列幀模擬連續(xù)運(yùn)動(dòng)的方式一直持續(xù)到早期的游戲制作,甚至今天2D游戲還依然大量使用這類動(dòng)畫技術(shù)橘茉。

一些3D游戲中的角色的動(dòng)作目前基本上是通過骨骼蒙皮實(shí)現(xiàn)工腋,這種動(dòng)畫著眼于大體的肢體動(dòng)作,數(shù)據(jù)量少畅卓,通過堆人力的方式可以得到很好的效果擅腰,但是對于頭發(fā)飄動(dòng)、衣服的褶皺與抖動(dòng)等效果由于數(shù)據(jù)量過大則是無法通過這種方式實(shí)現(xiàn)翁潘,這類動(dòng)畫我們稱之為secondary fact惕鼓,因此我們需要一種自動(dòng)化的方法或者技術(shù)來實(shí)現(xiàn)對secondary fact的模擬與計(jì)算,而這就是這門課的意義與目的唐础。

要想實(shí)現(xiàn)自動(dòng)創(chuàng)造動(dòng)畫的目的箱歧,我們就需要遵循一套最基本的最好的規(guī)則,這就是所謂的第一性原理(即拋開所有的雜項(xiàng)一膨,只聚焦在最關(guān)鍵的部分上)呀邢,而最好的規(guī)則就是基于物理的方法來創(chuàng)造計(jì)算機(jī)動(dòng)畫,這是因?yàn)榛谖锢碓淼乃惴ㄝ敵龅慕Y(jié)果是自然的真實(shí)的豹绪,能夠讓人信服的价淌。

現(xiàn)在的計(jì)算機(jī)動(dòng)畫最主要的內(nèi)容就包括如下三塊:

  1. 剛體模擬
  2. 軟體模擬
  3. 流體模擬

當(dāng)然,我們經(jīng)常在游戲中看到一些其他效果瞒津,如雪蝉衣、破碎、沙子等巷蚪,這些現(xiàn)象其實(shí)可以拆分成上述三種模擬的一種或者多種病毡,或者說前面的三種模擬就是物理動(dòng)畫模擬的基向量。

1. 動(dòng)畫模擬趨勢觀察分析

所有的技術(shù)最終都是為如下三個(gè)目的中的一個(gè)或者多個(gè)服務(wù)的:

  1. 提高產(chǎn)品質(zhì)量屁柏、增強(qiáng)效果
  2. 降低成本啦膜、增強(qiáng)效率
  3. 擴(kuò)大應(yīng)用范圍與邊界

從學(xué)術(shù)界來看,計(jì)算機(jī)動(dòng)畫的趨勢有三種:

  1. 不同scale的動(dòng)畫模擬淌喻,以及不同物理現(xiàn)象融合在一起的動(dòng)畫效果
  2. 神經(jīng)網(wǎng)絡(luò)+機(jī)器學(xué)習(xí)帶動(dòng)下的基于數(shù)據(jù)驅(qū)動(dòng)的動(dòng)畫模擬
  3. 多態(tài)(不僅僅局限于視覺僧家,還會擴(kuò)展到觸覺以及聲音等現(xiàn)象的)模擬

1.1 多scale模擬

可以參考Siggraph 2008年的一篇文章:Wavelet Turbulence[Kim et al. 2008]。這篇文章通過將一個(gè)復(fù)雜的動(dòng)畫效果拆解成多個(gè)不同scale的簡單動(dòng)畫效果裸删,從而以較低的消耗近似模擬出一個(gè)高復(fù)雜度的動(dòng)畫效果:

另外八拱,Siggraph 2018年的一篇文章(Chen et al. Siggraph Asia 2018)也使用了這種方式實(shí)現(xiàn)了對沙子(Granular Material)的模擬:

上圖中,左邊是將每顆沙子都單獨(dú)建模進(jìn)行模擬的效果,右邊是紅色沙子當(dāng)成流體進(jìn)行模擬肌稻,藍(lán)色沙子還是單獨(dú)建模進(jìn)行模擬清蚀,兩者效果看起來差不多,不過右邊的方案計(jì)算效率有6.8倍的提升灯萍。

除此之外轧铁,Siggraph 2021年的一篇文章(Huang et al. Siggraph Asia 2021)也是基于這個(gè)思想實(shí)現(xiàn)的:大尺度的海洋用簡化的方案模擬每聪,船跟海洋交互產(chǎn)生的浪花則是使用較為精細(xì)的方案模擬旦棉。

UCLA的一個(gè)組用這種方案實(shí)現(xiàn)了對船在海洋中運(yùn)動(dòng)的交互效果。

除了上面之外药薯,還有一些其他的工作也是基于這種想法做出來的绑洛,這里就不一一羅列了。

1.2 數(shù)據(jù)驅(qū)動(dòng)方法

基于數(shù)據(jù)驅(qū)動(dòng)的方案介紹之前童本,先來看下一種十分古老的動(dòng)畫模擬方案:Model Reduction真屯。翻譯一下,就是模型簡化穷娱,即將一個(gè)復(fù)雜的模型分解成若干種簡單的模型再進(jìn)行模擬的方案绑蔫,圖形學(xué)中的球諧函數(shù)SH其實(shí)也是基于這種方式來完成對光照的模擬的。

上圖中的公式中D就是模擬盤子形變各點(diǎn)受力情況的項(xiàng)泵额,在這一項(xiàng)中配深,由于需要模擬的點(diǎn)非常多,因此是一個(gè)十分高緯度的向量嫁盲,而u則是這個(gè)向量的一個(gè)表示篓叶,而通常對這個(gè)的求解是通過將高緯度的u轉(zhuǎn)換為低緯度的q來實(shí)現(xiàn)的,其中一個(gè)關(guān)鍵問題是羞秤,如何找到完成這個(gè)轉(zhuǎn)換的矩陣U缸托,而這個(gè)矩陣的求解則是通過數(shù)據(jù)驅(qū)動(dòng)(如神經(jīng)網(wǎng)絡(luò),機(jī)器學(xué)習(xí)等)的方法實(shí)現(xiàn)的瘾蛋。

Siggraph 2013的一篇文章通過暴力羅列所有動(dòng)畫輸入與輸出效果映射數(shù)據(jù)的方式實(shí)現(xiàn)了對衣服布料的實(shí)時(shí)模擬俐镐,上面的第二張圖就是對應(yīng)于不同的布料狀態(tài)在不同的輸入下的輸出分支,可以理解為布料的整體模擬效果的分支哺哼,這個(gè)方案的問題在于需要消耗較高的內(nèi)存(據(jù)說是幾百兆)京革。

除此之外,GDC中以及Google的科學(xué)家也在摸索通過機(jī)器學(xué)習(xí)以及神經(jīng)網(wǎng)絡(luò)來通過當(dāng)前幀的數(shù)據(jù)模擬輸出下一幀的動(dòng)畫數(shù)據(jù)的方法幸斥,不過總的來說匹摇,在當(dāng)前的技術(shù)水平上,這種方式可能還僅僅只能停留在學(xué)術(shù)層面甲葬,無法做到工業(yè)應(yīng)用廊勃。

直接通過機(jī)器學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)根據(jù)當(dāng)前幀數(shù)據(jù)輸出下一幀數(shù)據(jù)的方法目前還面臨很多問題,比如穩(wěn)定性,比如last mile problem等坡垫,可能在十幾幀中可以得到不錯(cuò)的表現(xiàn)梭灿,但是在繼續(xù)模擬下去得到的結(jié)果就是滿天亂飛,或者可能99%的情況下可以得到正確的效果冰悠,但是1%的可能會導(dǎo)致錯(cuò)誤的結(jié)果堡妒,而這1%的錯(cuò)誤可能導(dǎo)致后面的模擬就完全是錯(cuò)誤的,無法回到正確結(jié)果溉卓,這顯然也是無法接受的皮迟。

不過,基于數(shù)據(jù)的方法雖然在現(xiàn)在還不能直接用來計(jì)算最終的效果桑寨,但是卻可以用于對傳統(tǒng)的方案中的某一步或者某幾步進(jìn)行加速或者提升伏尼。

前面說過,通過model reduction可以實(shí)現(xiàn)對復(fù)雜物理效果的模擬尉尾,但是這種模擬只能模擬給定采樣點(diǎn)的形變爆阶,相鄰區(qū)域的數(shù)據(jù)則是通過插值求得,上面這里給出的了一種方法沙咏,通過神經(jīng)網(wǎng)絡(luò)在給定的Reduction Model下辨图,可以實(shí)現(xiàn)任意點(diǎn)的變換,通過這種方式可以移除此前采樣點(diǎn)離散導(dǎo)致的精度問題肢藐。

1.3 多態(tài)模擬

體感模擬

觸覺對時(shí)間的敏感度高于視覺故河,需要做到至少1000 fps才能達(dá)到可以接受的地步,因此需要較高的性能窖壕。

聲音模擬

上面展示的是通過計(jì)算機(jī)模擬出場景交互中的聲音(比如盤子掉在地上發(fā)出的聲音)忧勿。

如上圖所示,聲音的模擬需要完成如上兩步的計(jì)算瞻讽,分別是物件交互的震動(dòng)模擬鸳吸,以及震動(dòng)轉(zhuǎn)換為聲波的傳播的計(jì)算。順便提一下速勇,聲音模擬計(jì)算性能要求還要高于體感模擬晌砾,每秒中要生成44100個(gè)數(shù)據(jù)點(diǎn)(與人耳的感知頻率范圍有關(guān),根據(jù)奈奎斯特采樣定律得到)烦磁。

2. 整個(gè)課程概覽

這門課是鄭昌熙教授在哥倫比亞大學(xué)為大四或者研一的學(xué)生所開設(shè)的計(jì)算機(jī)動(dòng)畫課程衍生而來养匈,對課程感興趣的同學(xué)可以去搜尋相應(yīng)的材料。

整個(gè)課程會分為如下四個(gè)部分:

  1. 數(shù)值積分基礎(chǔ)
  2. 剛體動(dòng)力學(xué)
  3. 軟體動(dòng)力學(xué)
  4. 流體動(dòng)力學(xué)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末都伪,一起剝皮案震驚了整個(gè)濱河市呕乎,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌陨晶,老刑警劉巖猬仁,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡湿刽,警方通過查閱死者的電腦和手機(jī)的烁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來诈闺,“玉大人渴庆,你說我怎么就攤上這事⊙拍鳎” “怎么了襟雷?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長漓穿。 經(jīng)常有香客問我嗤军,道長注盈,這世上最難降的妖魔是什么晃危? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮老客,結(jié)果婚禮上僚饭,老公的妹妹穿的比我還像新娘。我一直安慰自己胧砰,他們只是感情好鳍鸵,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著尉间,像睡著了一般偿乖。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哲嘲,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天傍衡,我揣著相機(jī)與錄音糕殉,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛芭概,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播磷支,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼萍倡,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了娃弓?” 一聲冷哼從身側(cè)響起典格,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎台丛,沒想到半個(gè)月后耍缴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年私恬,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了债沮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,809評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡本鸣,死狀恐怖疫衩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荣德,我是刑警寧澤闷煤,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站涮瞻,受9級特大地震影響鲤拿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜署咽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一近顷、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧宁否,春花似錦窒升、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至台谊,卻和暖如春蓉媳,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背锅铅。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工酪呻, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人狠角。 一個(gè)月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓号杠,卻偏偏與公主長得像,于是被迫代替她去往敵國和親丰歌。 傳聞我的和親對象是個(gè)殘疾皇子姨蟋,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容