2013/07/25

特效TD的工作準則


作者:Hammer Chen

一直以來都想要寫這樣的文章。不與技術直接相關,不受限於特定軟體,不隨著時間改變的工作準則。因為在從事電腦特效工作的這幾年來,發現專案執行最大的瓶頸往往不在電腦硬體的效能,亦非軟體的版本,反而是許多非技術性的觀念往往影響了整個進度的順暢。以下整理出自己累積的要點,與讀者分享並時時提醒自己,在遇到特效製作困難,如何才能在短時間解決問題。



調參數的藝術

  1. 從藝術家的角度來評量軟體,不要只從TD的角度
  2. 學習新軟體的流程比介面重要
  3. 用軟體就跟用人一樣:要發揮它的優點,而不是放大其缺點
  4. 首先研究官方場景檔
  5. 搞懂專有名詞是第一步,知道專有名詞的意思
  6. 儘管名詞重要,但學習任何東西,不應該被其名稱所困惑。名稱是人為的,不見得反應其本質
  7. 只更改關鍵參數,其餘不更動。調整最少的參數,達到最美麗的效果
  8. 參數要個別調整,以免相互干擾,不知是哪個參數貢獻的效果
  9. 身為講師,把醜的效果調整到美麗,這個過程才有價值。而不是將參數調整一次到位,學生無法學到失敗
  10. 預設參數不一定就是最佳化參數
  11. 有時候重點不是參數的數值,而是參數之間的比例
  12. 知道一般參數設定的建議範圍。直接抄襲專家的參數,但要知道大致意義即可
  13. 這個參數是不是反直覺的參數? 是不是與名稱相符?
  14. 先弄懂哪些參數,和計算時間/算圖時間有關,以利最佳化
  15. 相似參數之間的比較 例如Gravity與Buoyancy有何不同?
  16. 調整參數組是有操作順序的:以VRay為例 1. Prepass size 2. balance 3. th-rays  4. min/max density
  17. 對軟體找碴:進行奇怪的操作測試
  18. 技術要能夠scale up。小火苗與森林大火是不同的技術問題。
  19. 能夠一邊調整,一邊preview是很重要的功能
  20. 換個方式說,如果你有全世界效能最佳的電腦,你要怎樣設定才能得到最細緻的結果 (最佳化的相反思考)

粒子特效的重點
  1. 不要追求物理上的正確,要追求視覺上的衝擊
  2. 能夠自由地在幾何體,粒子,煙霧之間的變換,就能成為高手
  3. 關於粒子特效:能夠控制位置,形狀,數量,速度,壽命
  4. 力場的三大要素:方向,衰減,限制範圍
  5. 練習以下技能:a. 如果要讓粒子在某時間點改變顏色 b.讓粒子填滿茶壺 c. 粒子長出拖尾的效果 d. 粒子大小的漸漸變大/漸漸變小
  6. 力場的先後作用:海上船的動作模擬,到底是先boat還是先海,其實很難。水會撐起船 船會噴水,相互影響。
  7. 讓粒子運動最重要就是力場。要讓人跳的比較高不是把它拉高而是降低重力。

RnD的技巧
  1. 不知道如何開始嗎?邊想邊做是個不錯的策略
  2. 在遇到阻礙過後隔天還能以同樣的熱情來面對,這就是『愛』
  3. RnD的過程要有想法,持續地研究
  4. 精確地描述您的問題,是解決問題的第一步。知道問題在哪裡,答案就會自己來找你。
  5. 設定目標,結果, 檢討與目標比較。目前的結果問題出在哪裡?要知道目標,也要知道目前與目標的差異。
  6. 要思考a. 我要做出怎樣的效果 (真正的視覺畫面) b. 我要怎樣做(理論)c.我要怎樣解決技術問題
  7. 研究技術跟著名人走
學習
  1. 平時收集好的場景,好的參數,好的模型,好的教學等資源
  2. 花時間學習一生都能受用的技能,而不只是特定軟體的技能
  3. 看專家級教學: 指講觀念但是範例都是很難,業界實際會用到的狀況。教學有兩種,一種是短小精幹的,另一種是廢話連篇的冗長教學
  4. 這個年代大家都想要獲取快速而簡單的結論,很少人會看軟體使用手冊,直接看教學影片還會快轉
  5. 學習的第一步就是模仿,隨便做一個東西,然後再慢慢修正到完美
  6. 關於教學影片,一般人都是看表象,而不看本質
  7. 看教學需要的是『悟』。學習一定要學習到作者的精神,而不是直接重複操作,否則會學的很痛苦
  8. 追求有趣而不只是技術,做自己想做的,而不是別人要求你做的
  9. 邊看邊學是最快的。練習->看教學->練習 (loop)
  10. 創意地思考,可以幫助學習
  11. 如果TUTORIAL太難,簡化步驟,簡化教學,同樣可以達到學習的目的
  12. 從教學的角度學習東西,如果你是老師,你要如何教?
  13. 技術的專家, 一定覺得技術容易,至少操作上是。對於外行人來說,技術本身是難的 一再去思考,複雜的東西,背後是由哪些基本的原件所組成?
  14. 智慧就是靈活地拆解高階與低階概念的能力
  15. 理解是不能強求的,你只能盡力去學,然後等待突然的理解
執行專案
  1. 拿到project應該要先想到最簡單的作法,用內建的功能做出來,而不是利用外掛堆砌出來的美麗效果。
  2. 製作專案建議使用最少的plugin 減少出錯的機率
  3. 管理的本身不能複雜
  4. 退而求其次的藝術,不要一開始就追求完美
  5. 如果製作特效專案是做菜:a. 程序為何 b. 食材在哪裡 c. 為什麼要這樣煮
  6. 你永遠不可能達到業界的水準,永遠不可能等於真實世界,所以必須要用偷懶的方法,放大真實感的特徵,但執行卻是很經濟的
  7. 客戶抽象的意見是最難的:例如,『龍的動作要有氣勢』;技術性的錯誤,例如算圖出現黑色的線,反而單純
改善工作效率
  1. 將資訊切割成單純的片段 再用乾淨的介面連接起來 (模組化)
  2. 資訊要清楚地呈現 (不要耍小聰明)
  3. 將資料和使用方法寫在一起(防呆)
  4. 面對錯誤 把錯誤記錄下來
  5. 先把雛形做好再修正 能用了再減肥(事後優化)
  6. 時時考慮未來使用(擴充原則)
如何成為好的TD?
  1. 收集軟體的demo資源,知道它的功能,極限
  2. 讀官方HELP
  3. 找出軟體中專有名詞
  4. 橫向學習,深度學習
  5. 了解流程比了解介面重要
  6. concepet training:和專家做朋友,尋找專家寫的文章,他們的觀念會比較清楚而正確
  7. 學習簡化現有流程
  8. 用專案目標來練習
  9. 把複雜的東西拆解成元件
  10. 利用專家的數值
  11. 先求有,再複雜化
  12. 這個參數較高的效果是如何?較小的數值是如何?
  13. 用真實世界的角度來思考,改量3D特效的製作
  14. 對不合理的地方要思考如何改進,如何改變
關於教學影片
這些教學影片公司Digital Tutors, fxphd, Gnomon都太機車了! 講個觀念10分鐘就夠啦,為何要嗯嗯啊啊講太多的資訊? 有些參數根本就一時間不會用到,就算會用到也應該是讀者自行發掘就夠了,不需要婆婆媽媽地一直講細節吧。來很簡單的東西越解釋越複雜,教學影片的宗旨難道不是讓人在短時間了解觀念嗎? 一般人會花兩小時慢慢觀看教學影片嗎? 一定會看到睡著的。總歸一句,這些公司把十分鐘就可以講完的變成兩小時,目的就是灌水吧。我如果能在十分鐘內把困難的觀念講清楚,好像一台100核心的電腦與兩核心的電腦算圖相比,效率相差極大,而效率就是金錢。 從另外一個角度來看,以目前上所能收集到的教學影片來說,整天看一輩子恐怕也看不完。

[參數調校的文章]





4 comments:

ARC said...

感謝!我真的迷失在教學裡...

無法分辨哪個重要應該先看,
現在就只看ALLEN MCAKY的了

TZ said...
This comment has been removed by the author.
TZ said...

看到朋友分享這個文章,但看完後不太認同。就我目前工作遇到的fx td,都至少會scripting,而且都很有解決問題的能力,據說早期的fx td還會用c++開發工具。所以我覺得這篇比較像是在敘述初階到中階的fx artist。

Andy E said...

寫得真好,感謝!