目前在學習houdini 的困惑,還沒有感覺出來houdini 的強大


houdini的不同,是它比較偏低層。低層和高層,各有好處,只能說作用場景不同吧。

要說houdini和Maya的區別在哪?就得先說清什麼叫低層思維,什麼是高層思維?

比如一盞聚光燈,照射到一個球體,球體被照射到的部分為什麼會變亮?而沒照射到的部分為什麼不亮呢?這顯然是自然規律吧?所以「本來就是應該」的。用戶不需要明白,這個球為什麼會亮。只去思考「應該」層面之上的問題,這就是高層的思維方式。。

那低層要如何思考呢?一盞聚光燈,其實是個發射器(想像一個粒子發射器),而它發射出的是一種叫做「射線」的東西。射線會沿著自己的向量移動(如果不明白什麼是向量,去補習初中數學,也可以暫時理解為是方向)

有些射線會接觸到球體(被照亮部分),而有些射線則沒有接觸到(黑色區域)。接觸到球體的射線,會根據球體表面的法線方向產生反彈。射線反彈後,就產生了新的向量,而沒有接觸到球體的射線,不會產生反彈,也就不會產生新的向量。

所以這些新的向量起點,所在位置的面,就應該被照亮,到這裡應該是比較容易理解吧?

而每個面被照亮的強度應該是多少呢?這就要在每個新的向量與聚光燈「正前方」的向量之間,計算點積(高中數學)。而每次計算點積得到的值,再分別乘以目前燈光的整體強度。就得到了每個面上的亮度。於是球體被照亮了。

那弄明白球體為什麼會亮,有什麼用呢?就是可以改變「球被照亮的規則」。比如可以用燈光照射球體的左邊,左邊並不亮,而右邊卻亮了。它並不符合「自然規律」。而它是我們自己所創造出的新「規則」。

所以,houdini的優勢,就是很容易改變軟體的「規則」。maya的「規則」是相對寫死的(其實也是可以改的,只是比較麻煩)。絕大多數情況下,自己創造規則其實並沒什麼卵用,因為這些規則總是與「自然規律」相違背。但隨著工作經驗的積累,你還是會逐漸發現,有時候我們需要一些「與自然規律不同」的規則,這時就是houdini比Maya好用的時候。

總結一下,高層思維的核心是「人類友好」,人類平時怎麼思考問題,軟體就怎麼設計。這樣的好處在於,思考起來的效率更高。缺點就是CPU計算慢。

低層思維與之相對,就是「機器友好」,如何讓CPU更容易計算,軟體就如何設計。這樣的好處,就是減輕CPU的計算壓力,可以讓CPU計算更龐大的場景。壞處當然是用起來比較麻煩了。。

至於很多人說到houdini,都會提到流體。但其實houdini的流體功能,並沒什麼牛逼之處。高層軟體也照樣可以開發出同樣的流體模塊,甚至做出更強大的流體模塊也絕非難事,但為什麼它們沒有這樣做?因為它們「不敢讓CPU這樣算」,會導致軟體假死,甚至崩潰。而houdini恰恰因為偏低層,CPU可以承擔的計算壓力更大,所以它「敢讓CPU這樣算」。歸根結底,Houdini的流體強,並不是因為Houdini的流體模塊有什麼獨特設計,而僅僅是因為它偏低層,或者也可以認為,目前的CPU還是不夠強。因此才有了Houdini這種「優先服務於CPU,而非使用者」的軟體。

因為對「機器友好」,特點就是「執行效率高」,這樣做的好處是CPU計算的更快,所以場景可以更大,模型面數可以更高。與之對應的「人類友好」,特點就是「開發效率高」,好處就是用著舒服,幹活兒快,符合「自然規律」。

其實Maya和Max由於開發年代問題,設計的並不好,並沒有把高層思維「開發效率高」的優點體現出來。最能體現高層思維優勢的,是一個叫做C4D的軟體。既簡單到變態,又強大到逆天。你用Houdini絞盡腦汁,奮戰數天,拽了數百個節點,敲了上千行代碼,終於做出一個自認為不錯的效果,興奮感還未消退之際。卻發現同事用C4D隨便點點滑鼠,填幾個參數,不到一個小時就做出個一模一樣的出來,你是什麼感覺?

所以說高層和低層,沒有哪個是一定好的。還要看適用場合。Houdini通常只是在特定情況下使用,因為製作效率太低。所以絕大多數工作,還是要以偏高層的軟體完成。

Houdini和Maya(C4D,Max同理),從來就不是二選一的問題,如果非要選一,為保障可以有效工作,就選Maya吧。畢竟絕大多數工作,你可以不碰低層,但卻需要保障進度。等Maya玩的足夠好的時候,再學Houdini也不遲。

如果把製作動畫的過程比做照相,那麼軟體就相當於照相機。此時,照相機的高層思維則包括,焦距,快門,光圈的調節方法,以及TF卡與SD卡的使用方式。

而與之相對應的低層思維則是小孔成像,氣相沉積,衍射光柵,以及二進位數據的IO讀寫。

實際生產中,houdini一般作為輔助使用,真正使用的頻率其實非常低。為保障製作效率,大概不超過整個動畫製作流程的5%(數值不精確),其餘95%以上,都應該優先使用高層軟體來製作。所以建議初學者盡量不要直接學習houdini,而是在熟練掌握一款高層軟體之後,再把houdini作為進階使用。否則無論學習,還是就業,都將困難重重。初學階段好高騖遠,最終只會作繭自縛。

就如同前面所舉的照相機的例子,如果你希望找到一份攝影師的工作,應該優先學會調節光圈和焦距。如果有一個「攝影師」可以把氣相沉積講的頭頭是道,卻連光圈都調不好,那麼這個人其實並不是真正的攝影師,而是個不學無術的廢物。

最後該回答你的問題了,有什麼效果是只能用Houdini才能做出來的?

答案就是沒有,一種也沒有。

軟體存在的意義,從來都不是「做出之前做不出的效果」,而是「降低某些效果的製作成本」。


主要以下幾點:

1.效果,目前你能看到的特效99%houdini不需要C++就能實現,這點max maya辦不到。

2生產過程中各種疑難雜症的解決方案,這點新手可能沒有體會,比如拖尾煙,你們覺得很簡單,是的,某些情況是很簡單,那我來講一個例子,一艘飛船起火爆炸從空中快速墜地,鏡頭是跟著飛船移動的,為了追求效果,動畫速度極快,這個看起來很簡單都效果在maya max里會變的異常棘手,第一個問題,移動速度很快,不同幀數之間會出現大間距的斷層,大多數人的maya max解決方案只有提高step,往往是打到10或者更高才不那麼明顯(當然也可以模仿houdini的解決方案,這裡拒絕抬杠,houdini解決這個問題只需要稍微調整下發射源形態,所需要的時間不會超過一分鐘),但這意味著同樣的精度10倍或者更高的結算時間,第二個問題,移動速度快往往意味著移動距離十分的遠,雖然現在都有自適應體積大小,但代價也十分的高昂,往往最後花費高昂代價算出來的效果不堪入目(解算時間過長為了項目周期只能降低精度),解決方案也很簡單,刪掉視界範圍之外的解算,這個H解決也很簡單,把位置轉換到當前攝像機空間然後判斷是否在攝像機視界範圍之內,否則直接歸0,大概做這樣的預設需要十幾行代碼或者vop就可以解決,存好預設以後就是點一下就完事,我想MAYA max也許可以解決,比如K個什麼東西滅掉視界範圍之外的體積密度,這裡也拒絕抬杠,兩者解決問題的效率不在一個層次上。

3生產效率,也就是所謂的工業化,目前市面上所有軟體就H可以辦到,但必須用戶自己定製,目前國內絕大多數公司,我不知道這個數字多大,應該有90%以上(我習慣性傾向於低估)公司都辦不到所謂的工業化生產,他們以後都會被淘汰,他們都是家庭作坊式的流程,這個我不想多提,我只是告訴你們這是必然趨勢(不要覺得這個很難實現,這幾乎是必然的,而且不會太遠),你是想做螺絲釘還是繼續往上爬自己好好想想吧。


第一點

市場的需求,會houdini的特效師,可選擇的範圍更廣闊.

第二點

houdini相較於其他的優點,maya,max可以作特效,但是在相同學習成本下,你會發現houdini能達到更好的控制,再有節點化操作的可複製性.資產等等.

核心問題在於你不學,就GG 了.

有個外國特效師說過:houdini是特效師的遊樂場.


完全不是一個層面的東西。

就這麼說吧,我學了兩年多maya的特效,結果想不出合適的方法做出我學houdini一個月做出來的效果。

當然不是maya做不了,也有玩maya很溜的大神,再難的效果大神可能都能用MEL一點點啃出來,不過這就是抬杠了。如果就以我的水平來說,houdini能做而maya max做不了的效果太多太多了。

光一個最基礎的copy stamp和foreach節點做出來的效果,多少用maya 10年的都懵逼,這倆簡直不像一個領域的東西。

另外說一句,現在houdini每半年一次顛覆性的大更新,用了十幾年的老手也要重新摸索一段時間,學習速度趕不上升級速度,再看隔壁家桌子…唉沒眼看。現在垂死掙扎也要節點化了,然而他的底層就註定了無法做到像houdini一樣…


如果你本身對其他3D軟體比較熟悉,有這個感覺正常。

說實話我對houdini了解不多,不過有相當多或者說絕大部分人描述的houdini才方便做的東西,我一看,其內容有七八成吧,用其他軟體也就是略麻煩一點.....。

其實腳本表達式什麼的一上,很多事就沒那麼大差距,不過houdini本身設計就更偏向這個方向罷了,也就是這方面做起來更方便,其他軟體不是不能,而是繁瑣程度的差距是製作效率的差異。類比一下就是,houdini好比你拿到一個綁定好的模型來做動畫,其他軟體你需要先綁定一下,本身對綁定技術的了解就成為對二者理解的差異。


不是非用houdini做,而是用houdini做更快更方便效果更好,軟體只是工具,最終效果還要靠渲染器來呈現的


粒子吧……海洋流體爆炸

達到一定要求就只有H可以做得出來


其實吧,軟體沒有高低之分,只有用軟體的人才有強弱之別


houdini主要強大在可控性高跟改起來方便吧。畢竟工作不是給自己做東西,甲方才是爸爸,人家要什麼你就得改成什麼,不斷的改改改才是正常規律……

那節點式隨便改加可控性高的houdini就方便不少。

當然我對maya跟max也不是很了解,仍停留在當年培訓的層次。那時給我的感覺就是被插件牽著走,這個效果找插件啊,那個效果找插件啊,然後我就在想如果沒有插件該怎麼辦……來回裝也好麻煩啊。各模塊都是插件,那如果交互起來不是很麻煩嘛。如果插件實現不了的,要寫mel我不會啊

而houdini不需要插件,不會mel可以連vop。會了vop,學vex也是順水推舟。而且運行效率很高,破碎隨隨便便切個n塊,換maya估計就崩了。

至於流程麻煩,那就做otl吧,再存點預設。用起來也可以跟ae模板似的。再高級點python腳本走起。萌新特效師飄過……
推薦閱讀:
相关文章