包含9節(jié)視頻教程
關(guān)注17.1萬(wàn)次
realflow是制作水、海浪的頂級(jí)三維軟件。基本和houdini不相上下。用這個(gè)可以制作出電影級(jí)別的水特效。比如后天中水浪的效果。還等什么一起來(lái)學(xué)習(xí)吧!
houdini宇宙第一定律!
但凡是一些終極定律都是極簡(jiǎn)的,比如質(zhì)能方程式E=MC?2; 還有熵定律,及簡(jiǎn)的表達(dá),但是卻有強(qiáng)大的作用。而小編目前認(rèn)為houdini終極定律如下
IPO定律(不是原始股發(fā)行)
Input(輸入)→Process(處理)→output(輸出)
看到這里大家應(yīng)該會(huì)是一臉懵逼,或者有兩種反應(yīng): 反應(yīng)一就是這個(gè)怎么會(huì)是houdini的終極定律呢,就是很正常的流程?反應(yīng)二:這個(gè)我早就知道了,在houdini中很常見(jiàn),有什么強(qiáng)大作用嗎?
其實(shí),要說(shuō)知道,剛學(xué)CG的時(shí)候(還不是houdini)的時(shí)候就知道,只是真正領(lǐng)悟出來(lái)的感受是完全不一樣的,是在積累了一定量的使用和思考后才的出來(lái)的頓悟。
所以感悟出來(lái)的那一刻很興奮,有點(diǎn)像是走了那么久的路,原來(lái)我的目的地就是出發(fā)地。然而,我再也不是出發(fā)時(shí)候的自己。
這種感覺(jué)說(shuō)出來(lái)很玄乎,下面我會(huì)具體為大家解釋說(shuō)明:
下面情況不知道大家是否會(huì)遇到
1版本不同了,教程里面某些節(jié)點(diǎn)參數(shù)變了,我就不知道怎么做了?
2明明按照教程里面步驟去做,為什么我的結(jié)果就不一樣?
3我用教程的方法去做我自己的案例為什么行不通?
4我特效怎么調(diào)整都不好看,即使把解算精度提高得很高?
.........
我可以這樣說(shuō),上面這些問(wèn)題(還有很多問(wèn)題)就是沒(méi)有理解和應(yīng)用好IPO第一定律的問(wèn)題;蛘哒f(shuō),自以為懂了了這個(gè)規(guī)律,只停留在表面。
一houdini中的IPO定律
對(duì)于小編來(lái)說(shuō),houdini就是一個(gè)數(shù)據(jù)流軟件,輸入輸入,處理,輸出,就是那么簡(jiǎn)單的東西。只不過(guò)houdini是有數(shù)組,數(shù)十組,數(shù)百組(甚至成千上萬(wàn))組IPO組合而成,中間還會(huì)涉及到循環(huán)和嵌套,但是無(wú)論如何,本質(zhì)就是IPO流程。
下面就是houdini中各個(gè)模塊的展示
1obj層級(jí)下的
粒子模塊,動(dòng)力學(xué)模塊和剛體模塊(剛體模塊直接導(dǎo)回到輸入的obj進(jìn)行渲染,如果你想,也可以和其他動(dòng)力學(xué)一樣單獨(dú)導(dǎo)出渲染)。
2在 sop模塊下
sphere輸入 →transform進(jìn)行位移處理→輸出位移后的sphere→作為輸入到group→在group中進(jìn)行分組處理→輸出帶有組數(shù)據(jù)的shpere→輸入到mountain→基于sphere和組數(shù)據(jù)進(jìn)行形變處理→輸出最終的形變結(jié)果。
3vop模塊(包括材質(zhì)模塊)
4chop模塊
5動(dòng)力學(xué)內(nèi)部模塊(剛體和pyro煙火為案)
6cop合成模塊
7vex表達(dá)式 wrangle節(jié)點(diǎn)
8 渲染模塊
輸入模型+屬性(材質(zhì)),輸入燈光和相機(jī)→mantra 渲染器繼續(xù)擰處理→輸出定義內(nèi)容
總結(jié)
IPO模式在貫穿了houdini的整個(gè)軟件和各個(gè)模塊,從上面各個(gè)模塊的舉例中可以如下特點(diǎn):
1input整個(gè)輸入可以是人為創(chuàng)建或者是已經(jīng)存在的數(shù)據(jù):比如sphere1就是人為創(chuàng)建的數(shù)據(jù),我們給houdini敲入指令,創(chuàng)建一個(gè)sphere(其實(shí)內(nèi)部也是一個(gè)IPO模式)。包括分組,我們可以手動(dòng)框選,只是houdini不太推薦這種非程序話的做法。
2input不限制為一個(gè),可以為任意多個(gè)。比如sop和cop中的merge可以合并多個(gè)數(shù)據(jù),vex和vop中可以引入多個(gè)屬性等。
3IPO可以作為一個(gè)很長(zhǎng)的鏈條,上一個(gè)的ouput可以作為下一個(gè)的input,但是這個(gè)IPO流程是很清晰的,也就是肯定有input,process和output(當(dāng)然,硬是沒(méi)有process或者output這樣沒(méi)意義的操作也可以有,但是沒(méi)有任何意義)。
4由于houdini中涉及了多個(gè)模塊間的IPO,這里就涉及了不同模塊間的IPO傳輸問(wèn)題,這個(gè)是需要好好研究學(xué)習(xí)的。
回來(lái)說(shuō)一下很多同學(xué)的問(wèn)題
1分不清楚input,process和ouput的部分,所以出了問(wèn)題都知道在哪里找?
2把houdini各個(gè)模塊孤立學(xué)習(xí),沒(méi)有看到他們的本質(zhì)是一樣的,把每個(gè)知識(shí)點(diǎn)單獨(dú)記憶,更不要說(shuō)靈活運(yùn)用了。
二 IPO定律的強(qiáng)大應(yīng)用
1當(dāng)你真正理解了IPO,除了問(wèn)題就能很快定位到問(wèn)題所在,并且會(huì)解決最開(kāi)始提到的幾個(gè)問(wèn)題
版本不同了,教程里面某些節(jié)點(diǎn)參數(shù)變了,我就不知道怎么做了?
明明按照教程里面步驟去做,為什么我的結(jié)果就不一樣?
我用教程的方法去做我自己的案例為什么行不通?
下面舉一個(gè)很多人在學(xué)houdini的過(guò)程中都會(huì)遇到的一個(gè)問(wèn)題
給一個(gè)物體添加紊亂顏色:在point中使用turbulencenoise節(jié)點(diǎn)輸出給顏色
但是當(dāng)這個(gè)小球發(fā)生位移的時(shí)候,你會(huì)發(fā)現(xiàn)紊亂的紋理會(huì)滑動(dòng),感覺(jué)不是貼在模型表面上的。
有經(jīng)驗(yàn)的同學(xué)很快就會(huì)想到這個(gè)簡(jiǎn)單,加個(gè)rest節(jié)點(diǎn)就可以了。但是這是為什么呢?還有其他方法嗎?
這里我們先分析一下原因
在vop的鏈接中我們可以看到,我們輸入的是P→鏈接到turbulence→Cd中,一個(gè)很簡(jiǎn)單的IPO模式。但是不同的是現(xiàn)在P是每一幀都在變化(小球每一幀都在位移),input在不斷變化,那么turbulence輸出的值肯定也是不斷變化的啊,所以這就是滑動(dòng)的原因。
好了,找到了滑動(dòng)的原因,那我們的解決辦法就是這個(gè)input不變就行了,但是這不只是有rest的這個(gè)方法,而是有很多方法,但是本著就是讓整個(gè)input不會(huì)隨著時(shí)間變化就行。
方法一
如果是通過(guò)transform節(jié)點(diǎn)做的位移動(dòng)畫(huà),那么可以改變動(dòng)畫(huà)與顏色是順序,讓靜態(tài)小球先生成顏色,然后再用transform進(jìn)行位移。
當(dāng)然,這種進(jìn)限制于你用transform之后再houdini添加動(dòng)畫(huà)的情況,如果導(dǎo)入來(lái)的模型已經(jīng)是有動(dòng)畫(huà)的了參考下面辦法。
方法二 添加不變的矢量
rest postion節(jié)點(diǎn)分別鏈接到transform和 sphere兩個(gè)input端口,會(huì)生成一個(gè)rest vector屬性,然后再vop中bind引入這個(gè)屬性,取代P作為控制turbulence。
好了,我們來(lái)看看這個(gè)rest屬性到底為何方神圣?
當(dāng)你拖動(dòng)時(shí)間線的時(shí)候,你會(huì)發(fā)現(xiàn),只有在第一幀的時(shí)候 rest=P,而其他幀的時(shí)候P不斷變化,而rest保持不變。所以遠(yuǎn)離其實(shí)就是凍結(jié)了動(dòng)畫(huà)在某一幀,用這個(gè)不動(dòng)的rest屬性(存儲(chǔ)某一幀的P的位置值)。
那么如果你想凍結(jié)在其他幀的的位置屬性呢,使用timesshift節(jié)點(diǎn),刪除表達(dá)式就可以,比如第5幀。
那么我再拓展一下,為什么要用rest postion節(jié)點(diǎn)呢,為什么要是rest屬性,我自定義一個(gè)屬性來(lái)存儲(chǔ)某一幀位置不行嗎?
就是那么任性,我定義一個(gè)myvar進(jìn)行控制存儲(chǔ)就行了。
再往深思考一下,為什么一定是存儲(chǔ)P呢,我能找一個(gè)不會(huì)隨著時(shí)間變化的矢量屬性不行嗎?
比如uv,如果這個(gè)模型上有uv屬性,無(wú)論小球怎么平移運(yùn)動(dòng),uv是不會(huì)變化的。
1要確保模型有uv
2uv是在point層級(jí)上的,默認(rèn)導(dǎo)入obj模型uv是在vertex層級(jí)上的,所以需要通過(guò)attribute promote進(jìn)行轉(zhuǎn)化。
再再往深入思考一下,實(shí)際上我們只是需要一個(gè)不會(huì)隨著時(shí)間變化的vector,不用P,也沒(méi)有uv,那么我們還有一個(gè)每個(gè)多邊形必備的屬性 點(diǎn)序號(hào)!但是你會(huì)說(shuō)點(diǎn)序號(hào)是整形,不是矢量。的確,不過(guò)我們會(huì)轉(zhuǎn)化的嘛,三個(gè)整形不久可以組合成一個(gè)矢量了哦。
最核心的就是ptnum這個(gè)點(diǎn)序號(hào)不會(huì)隨著時(shí)間變化就行。
上面看似方法很多,其實(shí)本質(zhì)的思想就是因?yàn)閕nput隨著時(shí)間變化導(dǎo)致了滑動(dòng),那么我們就如何讓整個(gè)input不變,這就是一個(gè)本質(zhì)的解決問(wèn)題的思路,而上面所謂的各種方法都是整個(gè)思路的具體實(shí)現(xiàn)方法而已。
2 對(duì)于特效模擬,大部分同學(xué)只停留在對(duì)dop中的參數(shù)進(jìn)行調(diào)整,經(jīng)常忽略了input和output的處理。
左邊是用一個(gè)sphere右邊是一個(gè)torus圓環(huán)做法發(fā)射器的模擬
輸入模型場(chǎng)景的比例問(wèn)題,如果想獲得真實(shí)的效果,把場(chǎng)景盡可能地還原為真實(shí)比例,這樣才可以做出真實(shí)的特效。不要用1米的水盆去模擬大漩渦,也不要用2米的杯子去模擬倒水,這樣出來(lái)的動(dòng)力學(xué)效果都不真實(shí)。
對(duì)于破碎剛體等問(wèn)題,比如破碎一個(gè)墻,你用一個(gè)box進(jìn)行模擬,和對(duì)墻進(jìn)行真實(shí)的構(gòu)架 磚塊,鋼筋,水泥,和表面的石灰等進(jìn)行真實(shí)建模,你這樣還會(huì)為為什么我的box墻破碎沒(méi)有細(xì)節(jié)了嗎?
對(duì)于pyro和flip等ouput后的燈光和環(huán)境反射非常重要,即使你解算出很高精度細(xì)節(jié),不會(huì)大燈和沒(méi)有好的環(huán)境反射,流體和煙霧一樣不好看。
總結(jié):
看完上面的解釋不知道你對(duì)這個(gè)第一定律如何看待呢?對(duì)于小編來(lái)說(shuō),現(xiàn)在看朱峰社區(qū)www.zoombooms.com houdini教程,做案例和解決問(wèn)題時(shí)候都會(huì)想到這個(gè)IPO第一定律?梢宰尶此茝(fù)雜困難的步驟里面,讓你學(xué)會(huì)思考,歸納和整理。當(dāng)你很清晰地告訴自己,哪些是input,哪些是process和哪些是output,當(dāng)你知道了除了問(wèn)題我應(yīng)該去找哪些環(huán)節(jié),當(dāng)你把復(fù)雜的步驟拆分成一個(gè)個(gè)簡(jiǎn)單的IPO模式的時(shí)候,你還會(huì)擔(dān)心看不懂教程?理解不了和應(yīng)用不嗎?
反過(guò)來(lái)說(shuō),不要被一些所謂的大案例,大效果所嚇倒,其實(shí)無(wú)非就是這些東西。甚至很多大案例里面的技術(shù)點(diǎn)遠(yuǎn)不及一些小案例對(duì)你有用,小編發(fā)現(xiàn)有不少所謂教程,兜兜轉(zhuǎn)轉(zhuǎn)了半天,就只是在講一個(gè)簡(jiǎn)單的IPO而已。
這都是一家之言,相信有很多大神或者高手會(huì)有不同的意見(jiàn)。但是小編覺(jué)得對(duì)家會(huì)有所幫助就無(wú)償發(fā)給大家了,希望對(duì)大家有拋磚迎玉的作用!
朱峰社區(qū)網(wǎng)頁(yè)版(手機(jī)掃描-分享-添加到屏幕)
朱峰社區(qū)微信公眾號(hào)(微信掃一掃-關(guān)注)
未知用戶
2005-2025 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號(hào)-1
2005-2025 ZhuFeng Community All Rights Reserved
VIP