標(biāo)題: 電影中的數(shù)學(xué)——?jiǎng)赢?huà)工作室中的數(shù)學(xué)家 [打印本頁(yè)] 作者: 掃街 時(shí)間: 2013-3-27 15:03 標(biāo)題: 電影中的數(shù)學(xué)——?jiǎng)赢?huà)工作室中的數(shù)學(xué)家 皮克斯動(dòng)畫(huà)工作室的資深科學(xué)家托尼•德瑞斯(Tony DeRose)在紐約市的數(shù)學(xué)博物館(The Museum of Mathematics)做了一場(chǎng)演講,分享電影中的數(shù)學(xué)。托尼•德瑞斯穿了件花哨的皮克斯T-shirt,緩步在紐約的數(shù)學(xué)博物館演講廳的座席間,乍眼一看,他橫豎也不像個(gè)科學(xué)家。他頻頻向坐在位子上的未來(lái)小技術(shù)宅致意,以及向隨這些小技術(shù)宅同來(lái)的各位家長(zhǎng)和老師問(wèn)好。聽(tīng)眾中也不乏年長(zhǎng)的數(shù)學(xué)死宅及其基友。還有個(gè)二十幾歲的哥們,他曾經(jīng)是《汽車(chē)總動(dòng)員2》的龍?zhí)籽輪T(他的動(dòng)作捕捉被作為制作動(dòng)畫(huà)的藍(lán)本),他帶來(lái)了他娘,因?yàn)樗夏锵胍?jiàn)識(shí)下這些幕后的電影工作者是怎么把他兒子的動(dòng)作搬上熒幕的。; Q9 T) B, p. y7 s' k
托尼•德瑞斯今天的演講題目是“電影中的數(shù)學(xué)”(Math in the Movies)。主題就是他的工作——怎么把代數(shù)和幾何融入軟件之中,從而渲染出各式各樣的物體,或者驅(qū)動(dòng)復(fù)雜的物理引擎。托尼解釋說(shuō),這套流程,全世界的電腦動(dòng)畫(huà)工作室和電子游戲制作者都在用。他來(lái)這里演講的目的之一,就是告訴大家,動(dòng)畫(huà)師和游戲設(shè)計(jì)師若有大志,那么數(shù)學(xué)功底一定要過(guò)硬。身為皮克斯的資深科學(xué)家,托尼•德瑞斯數(shù)學(xué)功底何止過(guò)硬,簡(jiǎn)直是太硬——美國(guó)加州大學(xué)伯克利分校的計(jì)算機(jī)博士,專(zhuān)攻計(jì)算物理學(xué),然后又在華盛頓大學(xué)當(dāng)了十多年的計(jì)算機(jī)工程的教授。 9 q7 o- {) q2 o, x, z/ w" R8 |5 A7 c. h- u4 K
在計(jì)算機(jī)制作的動(dòng)畫(huà)中,頭發(fā)、衣服、流體和氣狀物(比如云、煙、火),都有自己專(zhuān)屬的物理引擎。而到了具體的電影中,這每一大類(lèi)的專(zhuān)屬模擬引擎又會(huì)根據(jù)情況得到進(jìn)一步增強(qiáng),表現(xiàn)出更加炫目的效果。托尼•德瑞斯說(shuō):“模擬水很簡(jiǎn)單;難點(diǎn)在于,用什么方法模擬出來(lái)的水,怎樣才像真的水,能被引導(dǎo)往某個(gè)方向流動(dòng)。”(在歐拉坐標(biāo)系下水流模擬需要的計(jì)算機(jī)資源太多,而使用拉格朗日坐標(biāo)系進(jìn)行的追蹤每個(gè)格點(diǎn)的模擬需要資源較少,但實(shí)際上是在模擬黏性不大不可壓縮的固體。) 6 W9 c: |# n- k( \! |7 p
1 d$ g5 O/ O; C c3 ]! q f% w托尼•德瑞斯舉了《勇敢傳說(shuō)》(Brave)里面的例子:梅莉達(dá)一頭蓬松卷曲的紅發(fā),便是用了全新的物理引擎模擬出來(lái)的。(傳統(tǒng)的頭發(fā)模擬是使用類(lèi)似漿糊的體積模擬,而不是一絲一絲的進(jìn)行碰撞模擬,漿糊里面每一個(gè)點(diǎn)的波動(dòng)會(huì)傳播到周?chē)狞c(diǎn),并且有一定的傳播速度和衰減程度,最后這一大塊漿糊被賦予頭發(fā)的絲狀材質(zhì)。而梅莉達(dá)的蓬松卷發(fā)則更類(lèi)似于多體的彈性和非彈性碰撞,故而傳統(tǒng)的頭發(fā)模擬引擎派不上用場(chǎng)。)托尼•德瑞斯和皮克斯動(dòng)畫(huà)師團(tuán)隊(duì)絞盡腦汁,終于制作出來(lái)梅莉達(dá)那一頭得比真的還真、極具表現(xiàn)力的秀發(fā)模型——當(dāng)然,這頭秀發(fā)的模擬計(jì)算量還要我們的超級(jí)計(jì)算機(jī)能承受。 $ ~) U2 _9 a7 }3 p" B# \0 j' z, x! [8 T% I3 I$ u# D: v6 F
托尼•德瑞斯繼續(xù)解釋?zhuān)骸罢鎸?shí)世界里面,頭發(fā)無(wú)時(shí)無(wú)刻都在彼此發(fā)生著碰撞。梅莉達(dá)的頭發(fā)有10萬(wàn)個(gè)單獨(dú)的有限元,而n個(gè)物體在下一時(shí)刻有 n2 種碰撞可能,10萬(wàn)個(gè)元就會(huì)有100億種可能,如何制作一個(gè)能快速模擬出100億種碰撞可能的引擎?這里,我們使用了特別的數(shù)據(jù)結(jié)構(gòu),使得這些碰撞可能性被去粗取精,沒(méi)用的碰撞可能性就被剔掉了。打個(gè)比方來(lái)說(shuō),如果對(duì)比‘傻而快’的MP3或者JPEG壓縮算法,我們創(chuàng)造的則是頭發(fā)模擬界的FLAC或者PNG的壓縮算法。”1 t# E+ @" ?6 ]3 g