顯示具有 Houdini 標籤的文章。 顯示所有文章
顯示具有 Houdini 標籤的文章。 顯示所有文章

2016年7月31日 星期日

Houdini 實作練習

影片來源https://vimeo.com/174958114

Entagma真的蠻神的,就是講得太快了些,我根本聽不懂啊XD 所以就是跟著做而已。

主要核心技術
用node輕鬆連接node
vdb一些node的使用
remesh

基本流程是這樣,版本H15.5:

建立幾何形狀
↓
isoOffset轉成volume
↓
scatter撒點到3維空間
↓
connect adjacent pieces 將點連接起來→另外建立polygon球與copynode將點上都copy球體

↓
wireframe把線加上實體
↓
合併球體跟wireframe
↓
用VDBnode轉成一個個voxel
↓
用VDB smooth sdf 稍微潤滑
↓
convertVDB轉成polygon
↓
remesh重新布線
↓
wireframe在線條間建立實體線段
↓
上材質 調燈光 輸出圖片

在上面iso之前可以加入switch來切換,我是加在iso之後,因為我在別的地方建立文字,而文字要達到比較完整的volume效果的畫,需要不同的值,所以我是在別的地方做好之後,在object merge進來…。
不過文字要連接…。
上效果

看起來像被揍過一樣 = =。





2016年7月24日 星期日

Houdini node 介紹 - facet(H15.5)

原文
http://www.sidefx.com/docs/houdini15.5/nodes/sop/facet



『Controls the smoothness of faceting of a surface.』

控制表面的平滑,同時也能計算點與面的法線。

Group:選定特定group來進行facet(有的話可以選)

Pre-Compute Normals:以連入此節點的input geometry來計算normal。

Make Normals Unit Length:重新把連入的Normal長度resize為1。

Unique points:如果任何vertices有共享點的話,建立新的點,讓每個點變成是不可共享的。

Consolidate:
1. No Consolidate:點不會被融合在一起。
2. Consolidate Point Slow/Fast:指定的距離內共享點。
3. Consolidate Normals Slow/Fast:指定距離內的點法線平均。

Slow version不應該使用,for backwards compatibility only.

Distance:Consolidation 的距離。

Use Accurate Distance:強制使用精準的Consolidation距離。

Remove Inline Points:清除多餘點。

Distance:共線距離

Orient Polygons:所有polygons朝向同一方向。

Cusp Polygons:Hard Edge化。

Cusp Angle:Hard Edge 化的Threshold角度設定

Remove Degenerate:清理有問題的polygons。

Make Planar:將polygon平坦化。

Post-Compute Normals:以運算結果來計算Normal。

Reverse Normals:反轉點的normal方向,在其他運算結束之後執行。


Houdini node 介紹 - object Merge(H15.5)

原文:
http://www.sidefx.com/docs/houdini15.5/nodes/sop/object_merge

PS:正剛開始進行英文訓練,所以東西有些實在看不太懂內容,有錯請不吝指正~~

『Merges geometry from multiple sources and allows you to define the manner in which they are grouped together and transformed.』

從多個來源merge幾何物件,並且定義他們group和transform的方式。

Number of Objects:底下載入模組的數量。
Enable Merge n :載入模組第一項,控制這個模組n要不要啟用,比移除更來得有彈性,資訊會留著。
Object n :載入模組的第二項,選擇要merge進來的node,這裡選到的node必須是geometry才行,fbx載入後的subnet是不能選的。這裡有各種使用方式:
例如
1. /obj/ball*。使用*號來將所有以ball為開頭的node都merge進來。
2. dynamic path來將動力學模擬的結果載入。
3. 使用__display_sop__或__render_sop__來代替設定為顯示模式的node,或設定為render模式的node。
4. bundle reference,使用@props 這種方式。* 這裡我也不太清楚,要實際使用過才知道。
5. 就算不是切到顯示的node,也可以merge進來。
如果路徑沒有輸入,就不會Merge任何東西。

Group n :載入模組的第三部分,如果載入的東西有分Group的話可以從這裡選擇,不輸入的話就是載入所有Group。

Expand Group n:載入模組的第四部份。如果上面的Group n不是空白的,這個功能開啟後可以保持被細分過的polygon primitives也有正確的接縫。

第一項Number of merge,就依照輸入數量產生對應數量的載入模組。

Transform:大意好像是說,這個選項是用來設定載入的物件的Transform屬性設定。
1. None,制止任何修正的變換值。
2. Into This Object,確保source object與this object之間的差異
3. Into Specified Object,使用指定的Transform object,而不是目標空間中的object。

Transform Object:被Merge進來的物件將會被這裡設定的物件關聯。
1. 留空的話,merge進來的物件就會是目前的object's space,會出現在原點,不帶任何的tranform值。
2. 輸入 . 的話,物件merge會在他的原始位置,但是transform值歸零。
3. 有選到東西或是輸入路徑的話,有點類似變成該物件的子物體的感覺。

Invert Transform:上面有輸入物件的話,打勾可以反轉兩物件的關聯,變成與父物體同樣的方向或是反向。

Create Point Groups:merge in 的每個物件都建立一個point Group,每個group名稱都是唯一的,有需要的話會加上一個數字。

Point Group Prefix:Point Group的前綴。

Create Primitive Groups:為每個merge in的物件建立一個primitive Group。

Primitive Group Prefix:primitive group的前綴

Create Per-Point Path:建立一個Attribute在import進來的點上,包含source完整路徑。
如果是從DOP來的點,那路徑就是DOP Geometry Data的路徑。

Create Per-Primitive Path:與上述參數類似。

Path Attribute:增加path attribute後的名稱。預設名稱的objname可以在之後被expression使用→OBJNAME這個變數。

Pack Geometry Before Copying:這裡應該是文檔錯誤,node上是merging。應該是指在merge in 之前先把geometry打包吧。

Pivot Location:中心點位置,可以在物件中心,或是原點。

Display As:顯示類型...

Add Path Attribute:允許使用者把完整路徑放到有命名過的字串attribute中。

FBX in Houdini

比較早期一點有注意的人會知道mixamo這個網站。這裡有提供一些mocap的動作與角色,有免費有付費。

根據這個教學,可以知道fbx要怎麼帶入houdini中。
https://vimeo.com/59524177  這是個模擬布料的教學。

我從mixamo上抓了一個peasant girl跳samba的fbx下來,載入後是subnet的狀態,所以我先找到geometry是在peasant girl這個geo node之中。

所以在/obj下建立一個geometry,使用object Merge這個 node,然後要選到上圖之中的這個node來載入,就可以讀過來。接著在用rop output node來輸出成bgeo。


本來我要試著轉成alembic,但原因不明的錯誤...。

我使用的是Houdini 15.5.523 NC 版的Houdini FX...