2014年6月5日 星期四

皮克斯:動畫電影背後的數學

《皮克斯:動畫電影背後的數學 - 東尼德羅斯(Tony DeRose)》

觀看完整課程:http://ed.ted.com/lessons/pixar-the-math-behind-the-movies-tony-derose


皮克斯裡的各位,他們在世界上以述說故事和製作動畫聞名,卻很少被認為是數一數二的數學高手,皮克斯研究團隊領導東尼德羅斯(Tony DeRose)探索隱藏在動畫背後的數學,讓你了解算數、三角函數和幾何學,是如何使胡迪和其他你喜愛的動畫人物,活靈活現地呈現在你眼前。

講者:

東尼德羅斯 Tony DeRose.


皮克斯擅長說故事,但有個故事並不廣為人知,就是運用在動畫中大量的數學。

你在初中和高中,所學到的數學,在皮克斯中無所不在。

舉個很簡單的例子,有人認識這他嗎?這是《玩具總動員》裡的「胡迪」。

讓胡迪走向另一邊,就像這樣,從左到右,你相信嗎?你剛看到了一堆數學。

在哪呢?我解釋一下。

你要知道,藝術家和設計師腦子裡想的都是圖像和意象,但電腦裡運作的都是數字和方程式。

為了要讓兩者結合,我們運用了數學概念,稱為「幾何座標」。

我們設定一個座標系統,x 軸表示物件向右移動的距離,y 軸則決定物件的高度。

有了座標,就能讓胡迪出現在任何地方。

舉例來說,如果我們知道左下角圖像的座標,那就能知道其他的圖像在哪了。

剛才看到的動畫,就叫做平移。

x 座標值從 1 開始,在大約 5 的地方停下。

如果用數學的方式表示x 值比剛開始大四個值,換言之,平移的數學,就是加法。對吧?

那進位法呢?功能是讓物件變大或變小。
猜猜進位法的數學應該是什麼?

擴大、乘法,沒錯。

如果要把東西放兩倍大,x 值和 y 值都要加乘,都乘上 2,顯示了進位法的數學就是乘法。

好的,那這個呢?讓圖像旋轉。旋轉的數學就是三角函數。

這是解釋三角函數的方程式,乍看有點嚇人,你在八或九年級時可能學過,假如你坐在教室裡學三角函數,想著以後又不可能用到這東西。

只要記住:
任何你在我們電影裡看到會旋轉的東西,就關係著三角函數。

我七年級時第一次愛上數學,現場有七年級生嗎?有一些是。我那時候的自然老師告訴我,怎麼用三角函數,計算我正在建造的火箭高度,我當時覺得很神奇,從此我就對數學死心蹋地。

這有點老數學了,數學是在古希臘時期發展並廣為人知。

有個傳說,有趣的數學都已被理解。事實上,是所有數學都已被理解。

但新的數學卻是一直持續的創造,且有些是皮克斯創造的。

我要舉個例子:這些角色來自一些我們早期的電影。

《海底總動員》、《怪獸電力公司》、《玩具總動員 2》。

誰知道左上角那個藍色的角色是誰?是「多莉」,這很容易這個就比較難了。

有人知道右下角那個角色是誰嗎?「艾爾玩具城」的老闆「艾爾」,沒錯。

注意這些角色,他們都很複雜,他們的形體非常複雜。

清理玩具的爺爺,我有個樣本,畫面中間的是清理玩具的爺爺,這是他的手,你能想像這隻手過海關會多麼有趣。這隻手的形狀很複雜,這不只是一堆球體和圓柱體黏在一起,它不只很複雜,甚至還要進行複雜的活動。
我現在告訴你這怎麼做的,我要先告訴你什麼是中點,這裡有兩個點,A 點和 B 點,兩點間有一條線段,我們從兩個面向討論。M 是中點,平分該線段,這是幾何學。

為了寫出方程式和數字,我再次介紹座標系統,如果已得知 A 和 B 的座標,就可以藉由算出平均。輕易得到 M 的座標。

你現在對皮克斯的工作已有足夠了解,我秀給你看,我要做的這個有點嚇人,移動一個會動的樣本。這裡有一個四角形,我現在要把這個弄成圓滑的曲線,只是運用中點的概念。

我首先要做的就是平均分割,把各邊都加上中點,如此 4 個點就變 8 個點,這並沒有使其變圓滑,我現在要讓它圓滑一點,順時針移動這些點,到鄰近的中點,移動一下,這就叫做平均線移,現在上面有 8 個點,變圓滑了一些,我要把它弄得更圓滑,我該怎麼做?

重複剛才的動作,現在變16個點,我現在要把平均分割和平均線移,兩個步驟合在一起,稱為細分。

意思就是先分割再線移,變 32 個點。

如果不夠圓滑,就再重複一次,變 64 個點,有看到變形後的曲線。

跟原來四個點的差別嗎?

我們就是如此創造出各角色的外型。

但記得我剛說過,只了解這種靜止且固定的形狀是不夠的,我們要讓它動起來,讓曲線動起來,這就是細分的厲害。

記得《玩具總動員》裡的三眼外星人嗎?

你認得他們的聲音「噢~」看好,所以我們要移動這個曲線,就只要移動原本的四個點,
「噢~」我覺得這很酷,如果你不這麼覺得,大門就在那,這對我們彼此都好。


平均分割與平均線移的概念,也用在平面外觀,先分割再線移,再次分割和線移,兩個放在一起就是細分,我們就是如此創造出角色的 3D 外型。

細分的概念在1997年,我們首次運用在動畫短片,叫做《棋局》。

主角「傑瑞」有立體的外表,他就是《玩具總動員 2》清理玩具的爺爺。

他的兩隻手,是我們第一次運用到細分,兩隻手都是細分後的表面,臉部也是,他的夾克也是。

這是傑瑞細分前的手,這是細分之後,所以細分只是讓各個表面往內縮或往外凸,而做出漂亮的外觀,就成了你在電影院裡所見的那樣。從那之後,我們都是用此法創出角色。

這是《勇敢傳說》裡的「梅莉達」,她穿的衣服就是細分表面,雙手、臉都是。

那些族人的臉、手,也都是細分表面。


今天看到了我們運用動畫角色上的加法、乘法、三角函數和幾何學。

如果再給我一點時間,我就能介紹線性代數、微分和積分也如何囊括在內。

今天我主要是要讓你們知道,
記得你在高中到大二間所學的數學,
皮克斯無時無刻都在使用。

謝謝!

沒有留言:

張貼留言