講座精華 ❘ 夢想特效師用花博專案解析 Houdini

夢想動畫
MoonShine Animation

--

2018 年 11 月,夢想動畫為台中花博製作了一個絕美的牆面投影作品;影片中大量的粒子聚合的效果就是用 Houdini 作的。1/12 週六下午,負責此作品的兩位夢想動畫特效師郭子維和林于傑,以其各自製作的段落為例,分享製作過程。

台中花博特效幕後

為什麼花博的專案適合用 Houdini 製作?

為什麼花博的專案適合用 Houdini 製作?又或者說,這個專案中有些部分除了 Houdini 以外,其他軟體可能很難執行。主要原因有兩個:

  1. 點的特性
    整支影像中幾乎所有的物件都是由點構成的。以 3D 呈現,還包含運鏡跟轉場,上述這些事若在其他軟體處理會很花力氣。2D 軟體(例如 AE),也可以呈現點的效果,不過大概只能做到單張。相較之下,Houdini 在處理點就非常容易:只要給它一個模型、撒上點,最後上貼圖,就可以算圖,其他的都是動態處理上的事。
  2. 自由度
    Houdini 在製作上的自由度可以體現在很多地方。譬如程序性的建立好規則以後,可以輕易的複製或改動效果。在花博專案中很大程度展現了 Houdini 的優勢跟方便。這點兩位老師後續會舉例說明。

影像概念

整支影像是以微觀到宏觀的角度,展現台中的自然環境。所以從開頭的 DNA 生長開始,持續將視角拉遠, 直到片尾的宇宙樣貌。過程中會看見像是濕地、梯田、翠池、星空等,從低海拔到高海拔度的各種景觀跟動植物。

課程的第一部分,由林于傑老師用影片開頭的 DNA ,說明 Houdini 的屬性、節點等基本觀念

在進入製作前,要先認識幾個 Houdini 的基本名詞:

節點:是 Houdini 的基本工具。節點的類型很多,也各自具有不同功能。你可以透過節點設定參數,控制物件的長短、位置等。

屬性:屬性則是 Houdini 中各種類型的資料,包含像是點線面的顏色、大小、位置等。

另一個屬性的例子 Cd,也就是 Color Diffuse。在 RGB 設定數值就可以改顏色。

在 Houdini 中,你可以自定義原本 Houdini 中沒有的屬性;例如你可以自定義出一個 Normal (指法線向量,也就是垂直於物件面的向量)的屬性,決定它的長度、方向等。

用程序性的思維,建置 DNA

程序性思維意味著在製作的過程中,有脈絡的規劃,並且每個步驟都是標準化、規範化的。程序性的建置 DNA 的過程:

  1. 首先用 Resample 這個節點,將線上的點細分出來。接著勾選 Curveu 這個屬性, 把線段上第一個點到最後一個點,按照 0~1 重新平均分布。

2. 增加 Color 這個節點,並且利用 Ramp from Attribute 的功能, 依據 Curveu 上屬性的值,製作顏色漸層。

3. 接著新增 Copy to Point 這個節點。Copy to Point 的作用是將點上的屬性資訊(位置、顏色、大小等等)複製到物件上。

白色線段經過 Copy to Point 這個節點的作用後
出現橫向擁有相同屬性的線段

4. 將直線合併,再增加 Mirror 這個節點,鏡像複製出 DNA 的另外一半。

5. 用 Bend 這個節點,扭出 DNA 的形狀,就完成了。

6. 最後把所有東西打包做成工具,整理所需參數(長度、寬度、密度、粗細、扭曲程度),在外面寫好要控制的欄位。未來當客戶或是導演希望 DNA長一點、寬一點、窄一點、密度低一點的時候,只要個別控制那些參數就可以。而這正是 Houdini 這個軟體的優勢之一。

接著郭子維老師分享蝴蝶變成河流的段落,說明轉場的方式、如何整合不同的場景與攝影機

好轉場的定義有很多,其中一項是在不同 Cut 轉換之間,攝影機或物件移動的軌跡是否流暢。用花博專案為例的話,就是在蝴蝶飛舞、轉變為河流的過程中,能否無礙的銜接兩者。

第一步,整合場景與攝影機

這個段落困難之處在於,蝴蝶與河流各自的 3D 場景跟攝影機都在不同位置,要如何整合場景與攝影機,做出流暢的轉場?因此第一步是整合場景與攝影機,順成同一個鏡頭。

計算攝影機變形資訊,將變形資訊賦予場景、攝影機。其中牽涉到數學與程式。

第二步,讓蝴蝶轉變為河流

  1. 首先要做的事是製作蝴蝶。如同前面提到的,在 Houdini 製作點是相當容易的,只要撒點並且上貼圖,基本上蝴蝶就製作完成了。

2. 然後製作河流。大致上河流的製作過程可以拆分為:撒點、將點連線、細分線斷、扭動幾個步驟。

2. 接著設定蝴蝶消散的時間點。在影片中蝴蝶首先消散,再轉變為河流,因此先做出蝴蝶的消散。這步設定每隻蝴蝶消散的時間點:

設定蝴蝶消散的點

然後進到粒子系統製作消散的效果:

3. 接著讓消散後的蝴蝶,吸附到前面製作的河流的線上。這裡的邏輯是,消散後的蝴蝶的點,要找出河流的線段上最近的位置。

4. 接著利用 Age 這個屬性,控制點出現(Age 可以理解為點的「年紀」。這邊 Age 設定為 0.5–1.5,也就是每個點出生的時間不同,在經過一段時間後,各自擁有 0.5 秒到 1.5 秒不等的 Age)。點在出生後,會開始慢慢附著到河流的線段上。

5. 不過這時會遇到的問題是,點會隨著時間經過,不停的判斷最近的點,造成跳動。因此需要用 Timeshift 這個節點讓時間暫停,讓點和線都定格在某時間,找出最近的點,給予會動點的位置。

用 Timeshift 的節點暫停時間,讓點在暫停的時間點判定最近的線段位置

第三步,去除空間感

在最後的成果中,蝴蝶飛行轉換到河流的過程中,場景是不動的。在場景不動、攝影機持續前進、蝴蝶也持續移動的情況下,畫面會出現空間感,而這不是希望達到的效果。因此在這步需要消去空間感。

  1. 讓河流跟隨攝影機。

2. 利用視覺原理,讓物件大小在鏡頭中看起來不動。

當物體靠近攝影機同時縮小、或物體遠離攝影機同時放大,在攝影機中看起來是不會變的。

利用這個視覺原理,把蝴蝶投影到平面上,並在那個平面上做所有要做的事。如此一來不管攝影機拉遠或拉近,蝴蝶看起來都是不會變的。

上圖是蝴蝶被投影到河面上,在河川上變成線。下圖則是攝影機呈現的結果。

最後只要算圖、合成就完成了整段轉場。

從花博專案學 Houdini

拆解花博專案的過程中,可以知道要使用 Houdini 做特效,數學、邏輯、美感、程式語言、邏輯與規劃能力每項都很重要。理性的邏輯能力跟感性的美感能力兩種都必須具備。而兩位夢想特效師的背景正巧是端點的兩邊。因此若想成為好的特效師、想用 Houdini 做特效,任一邊的能力都不能偏廢。

郭子維

夢想動畫特效師。持續推廣 Houdini 的學習和應用。在動畫及特效產業擁有超過 8 年經歷,製作過的專案包含第 49 屆金鐘獎頻道包裝、電影 <樓下的房客>、五月天演唱會視覺特效等。服務客戶涵括 ASUS、ACER、BENZ 等品牌。
▶ 郭子維的 Houdini 教學部落格 http://bit.ly/2SgyWfT
林于傑

夢想動畫特效師。淡江大學資工系畢業,看完電影 <環太平洋> 後受到感召,決定把人生獻給特效。曾任職於砌禾數位動畫,現為夢想動畫特效師。製作過的專案包含電影 <萌學園>、<北城百畫帖>、<狂徒> 等。服務客戶則有 ASUS、ACER 等品牌。

這是夢想發光吧首次舉行的課程,未來如果你有興趣參與、想聽其他主題,歡迎 follow 夢想發光吧粉專或者私訊我們

--

--

夢想動畫
MoonShine Animation

用科技探索創意和影像的可能性。MoonShine Animation is a visual effects company specializing in VFX & motion design. Keep exploring possibilities in creativity.