最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Houdini學(xué)習(xí)筆記012

2022-08-16 12:06 作者:獨孤嘌呤  | 我要投稿

今天我們來學(xué)習(xí)如下所示的刺狀多面體骨架的創(chuàng)建方法,使用的軟件是Houdini 18.0。


創(chuàng)建的思路比較簡單,先將原多面體的點沿法線方向往外延伸得到線,再以整體線框為框架生成網(wǎng)格化模型。


我們從一個“platonic solids”(柏拉圖多面體)節(jié)點開始做起,這是一個多面體節(jié)點,跟C4D中的寶石體對象類似。如將其“solid type”改為dodecahedron,即由12個正五邊形組成的正十二面體。


為了后面方便替換,后面連接一個“null”(空白)節(jié)點,在節(jié)點面板按快捷鍵【C】可以設(shè)置節(jié)點的顏色。選擇節(jié)點后點擊相應(yīng)色塊即可,再次按【C】可隱藏色板?!皀ull”節(jié)點一般用于記錄或顯示重要節(jié)點的位置,沒有其他額外的作用。之后如果需要替換初始的多面體,直接將其連接到“null”節(jié)點輸入端即可。


由于“platonic solids”節(jié)點默認(rèn)沒有點法線信息,用“normal”節(jié)點為其添加點法線,“add normals to”選擇points,表示將法線添加給點對象。在Geometry Spreadsheet窗口可以看到多余N[x]、N[y]和N[z]的信息。


添加點法線后點擊視圖右側(cè)工具欄中的“display normals”按鈕可以在視圖中看到法線,如下圖所示——


接下來就是怎樣讓多面體的頂點沿著法線方向移動,我們先用一個“add”節(jié)點將這些點單獨提取出來,勾選屬性中的“Delete Geometry But Keep the Points”選項。


現(xiàn)在我們有了點的坐標(biāo)屬性P,和法線屬性N,P+N就是讓點沿著法線方向移動1個單位。依此類推,P+2N,P+3N……就是移動2個、3個……單位的距離。這里使用的節(jié)點叫做“point VOP”,雙擊進(jìn)入節(jié)點內(nèi)部如下所示,有一個“geometryvopglobal”節(jié)點和一個“geometryvopoutput”節(jié)點??梢钥吹蕉丝谟蠵、Cd、N等一大串屬性,也可叫做全局變量。該節(jié)點的作用是利用現(xiàn)有的全局變量進(jìn)行某種轉(zhuǎn)換,得到新的數(shù)值。諸如彎曲、扭轉(zhuǎn)等變形實質(zhì)上就是點坐標(biāo)的變換,用“point VOP”也可以做到。它可以創(chuàng)建軟件中默認(rèn)沒有的變換功能。


本例中的變換比較簡單,只需要P+s*N即可。P和N分別是位置和法線,s是系數(shù)。使用到的節(jié)點是數(shù)學(xué)計算的“add”和“multiply”,點擊查看節(jié)點信息可以看到都屬于Vop節(jié)點。


為了讓系數(shù)可以在外部調(diào)節(jié),在“multiply”節(jié)點的input2端口按鼠標(biāo)中鍵,選擇“Promote Parameter”選項。

然后可以在端口左側(cè)出現(xiàn)一個圓角矩形的標(biāo)記,點擊后在屬性窗口可以設(shè)置端口數(shù)據(jù)的名稱、類型和取值范圍等。和筆記010中設(shè)置參數(shù)的界面類似。這里我們可以把系數(shù)的名稱設(shè)為“scale”,標(biāo)記設(shè)為“Scale”。


按【U】退回到上級節(jié)點,可以看到多出一個“Scale”控制參數(shù),調(diào)節(jié)其數(shù)值就可以實現(xiàn)點沿著法線方向的移動。


然后想辦法讓移動前和移動后的點連接成線。這里我們可以先給每個點一個獨特的標(biāo)記,讓點在移動后可以通過標(biāo)記識別移動前的自己。用到的是“enumerate”節(jié)點,將“group type”改為points,這里實際上就是添加了一個叫“index”的屬性,給點進(jìn)行編號。


將移動前后的點“merge”后,在Geometry Spreadsheet窗口可以看到,index屬性中的編號從0開始都是成對出現(xiàn)的,表示的就是移動前后的點。


有了這個成對的識別標(biāo)記后,連線就很簡單了,讓相同index的點連接成線即可。還是用“add”節(jié)點,在“Polygons”中選擇“By Group”,“Add”方式“By Attribute”,即按照屬性來添加,“Attribute Name”一欄輸入“index”即可。


哆嗦了這么多,我們終于做完了第一步?,F(xiàn)在用一個“merge”節(jié)點將初始多面體和新連接的線合并。


細(xì)心的同學(xué)會發(fā)現(xiàn)“merge”節(jié)點旁多了個感嘆號,雖然影響不大,但我還是想解釋下。還是那句話,出現(xiàn)Warning是正常的,我們需要學(xué)會的是怎樣分析并解決。查看“merge”節(jié)點的信息可知,warning是因為屬性的不匹配造成的,因為初始多面體和后面連線帶有的屬性名稱和數(shù)量不匹配,包括index和N屬性。


具體到Geometry Spreadsheet窗口查看,可以看到原多面體是沒有“index”屬性的,“merge”之后為了適配,都默認(rèn)加上了一個-1的值。其實這個-1在這里是完全沒有必要的,只是為了數(shù)據(jù)的統(tǒng)一而已。


如果不想有這種狀況發(fā)生,解決的辦法也很簡單。因為index和N屬性在我們連完線之后就不需要了,可以用“Attribute delete”節(jié)點將其刪除。也就是在“add”節(jié)點后加上“Attribute delete”節(jié)點,節(jié)點屬性的“Point Attributes”欄輸入“N index”選項,這兩個屬性就會被刪除掉?!癿erge”的warning也隨之消失了。


后面的處理相對簡單自由一些,這里我用的是“polywire”節(jié)點,讓線變成柱狀。“Smooth point”設(shè)為0,“Divisions”設(shè)為6,讓每邊都是六棱柱。


接著用的是一套VDB節(jié)點,將其轉(zhuǎn)為整體的多邊形模型,在之前的筆記中已經(jīng)講過,這里不再細(xì)述。


最后我用了一個“Attribute Blur”的節(jié)點,翻譯叫做屬性模糊。這個節(jié)點有點意思,它可以讓屬性變得平滑,比如默認(rèn)的“Attributes”是P,即點坐標(biāo),模糊后得到的就是模型平滑的效果。增加“Blurring Iterations”(迭代次數(shù))可以調(diào)節(jié)平滑的程度。如果平滑的屬性是Cd或N,那么就是對顏色或法線進(jìn)行平滑。


如果覺得“刺”不夠長,調(diào)節(jié)之前在“point Vop”節(jié)點中設(shè)置的“Scale”參數(shù)即可。


改變初始多面體的類型,就能直接生成最后的刺狀骨架了。


今天的筆記到此結(jié)束,我覺得兩個比較值得學(xué)習(xí)的節(jié)點是“point Vop”和“Attribute Blur”。感謝各位的閱讀,下回再見~

Houdini學(xué)習(xí)筆記012的評論 (共 條)

分享到微博請遵守國家法律
璧山县| 礼泉县| 武汉市| 敖汉旗| 兰西县| 达孜县| 犍为县| 博爱县| 如皋市| 平乡县| 伊春市| 丰台区| 临沧市| 城口县| 平山县| 洱源县| 普安县| 上蔡县| 葫芦岛市| 鄯善县| 班戈县| 桓台县| 鞍山市| 昌吉市| 临武县| 包头市| 金阳县| 山东省| 金塔县| 平原县| 峨山| 衡阳市| 平陆县| 龙州县| 永年县| 云浮市| 呼图壁县| 黑水县| 察哈| 肇州县| 福州市|