調べた事をメモ。リンク等。
雑にまとめているので、いいかげんなところもあります。
◯KineFXメモ
https://qiita.com/masuki/items/4d6c49e6dcb65936150b
直線から余分なポイントを削除
Facet SOP
「Remove Inline Points」をチェック。
重なった面を削除
ぴったり重なってしまっているポリゴンを消します。
Clean SOP
Consolidate pointとFix Overlapsにチェック。Delete Overlap Pairsをオフ。
Delete Overlap Pairsがオンの場合は、重なっているポリゴンがすべて消える。
ポリゴンを統合する(外周のポイントは残す)
Divide SOP
Remove Shared Edgesにチェック。
ポリゴン(平面)外周のcurveを作る
オブジェクトの表面に沿ってカーブを描く
Draw Curve SOP
ProjectionタブのProjectionを「Geometry」にする。
ランダム選択
ランダム分割
縦横ランダムに分割する。
外周のエッジをグループ化
Group SOP
Group Typeを「Edges」に。
Base GroupのEnableのチェックを外す。
Include by EdgesのEnableをチェック。
Min Edge Angleにチェック。
Group Typeを「Primitive」にすると図の右のようになる。
$HIP $JOBの場所
$HIPは今開いているファイルのある場所
$JOBはprojectを使用している場合、そのprojectの場所
複数ポリゴンを、1つのポリゴンに統合する
参考:「Labs Repair / Quadrangulate / Remove Inside Facesノードについて」
https://houdinifx.jp/blog/labs-repair-quadrangulate-remove-inside-faces%e3%83%8e%e3%83%bc%e3%83%89%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/
Resampleで角が丸くなってしまうのを直す
パラメータのResample by Polygon Edgeをチェック。
分離したカーブを一つにまとめる
Polypath SOP
ポイントは繋がっているのにカーブがバラバラになっている(primitiveが分離している)場合がありますが、
それを一つにまとめます。(重なっているポイントはfuseで統合しておきます)
パラメータから直接バウンディングボックスやattributeを指定する
パラメータ右クリック→Reference→SceneData
〇〇SOPの段階のxの最小値最大値とかそういうのを指定できる。他にもいろいろ使えるので便利。
attributeの数値を直接グループに指定する
グループ欄に「@rand=1」というように入力。
「@rand = 0」のようにスペースを開けるのはNGなので注意。
パラメータをピン止めする
ピン止めしておけば、常にこのパラメータを表示させておけます。
オブジェクトの重心、もしくは中心点にポイントを作成
Extract Centroid SOP
RunOverを「Detail」にする。
Outputを「Attribute」にするとポイントを作らず、centroidという名前のattribute(detail)が作られる。
つながっているプリミティブごと重ならないように整列
Labs Align and Distribute SOP
nameアトリビュートで分ければ、複数プリミティブでまとまったオブジェクトごとに整列することも可能。
ランダムにオブジェクトをコピー(H.18)
Copy to Pointsを使ったランダムコピー。
参考 :
「Houdini:Copy to Points 2.0」
http://nomoreretake.net/2020/02/13/houdinicopy-to-points-2-0/
(H18.5からはAttribute from piecesを使うと良いです)
もうcopystampは使う必要ないかな。使いにくかったし。
UVLayoutを使ってオブジェクトを敷き詰める
参考: https://vimeo.com/296292351
UVLayoutの**UV Attributeの「uv」を「P」に変える。**その横の「XY Projection」を変えることで向きを指定。
デフォだと1x1の大きさの正方形に収まるように調整される。
○別の形状にオブジェクトを並べる
別の形状を第2インプットに繋ぎ、「Targets」 の「Pack Into」を「Islands From Second Input」に設定。
その下のUV Attributeを「P」に変え、その横の「XY Projection」を変えることで向きを指定。
追加記事:「UVLayoutを使ってオブジェクトを敷き詰める」
https://qiita.com/masuki/items/0069aa201ce25d366fbb
よく使うファイルの場所を保存
ファイル選択画面の下の「+」を押すと今開いているファイルの場所を保存します。
HoudiniでAO
Labs calculate occlusion(実際はMask by feature)
お手軽にビューポートにAOを表示できて便利なんですが
肝心のレンダリングに反映されません。(バグ?)
対処法
Outputの「Combined Mask」のチェックをオフにした上で
「Ambient Occlusion」にチェックを入れる。attributeの名前は自由に。
その下にwrangleを繋ぎ「@Cd=@ao;」と入力(@aoの名前は任意)
謎の球体がレンダリングされる現象
mantraでレンダリングすると時々このような謎の球体がレンダリングされて困る事があります。
これは浮遊したポイントが残っているのが原因で、
Clean SOPでポイントを削除できます。(Remove Unused Pointsにチェック)
Dirt Skirt
Labs Dirt Skirt SOPとは?
オブジェクトと地面の境界に溶接部分のようなオブジェクトを作ります。
選択を保存、グループにする。(グループリスト)
ノード表示枠でShift+Z 。ノードをグループ化し、まとめて選択、表示ができる。
登録はノードを選択してドラッグすればよい。右クリックで追加、削除等
例えばスカートのボーンをすべて選択して、まとめてオンオフとかそういう時に使う。
Ngonをグループ化(VEX)
primvertexcount(0, @primnum) > 4
primvertexcountはプリミティブ内の頂点の数を返す。
例)wrangleノード(RunOverはPrimitives)に
if ( primvertexcount(0, @primnum) > 4){ @group_ngon = 1; }
と書く。
5角形以上の面が「ngon」というgroupになる。
参考:
https://www.sidefx.com/forum/topic/52362/
Vellum
Detangle
Detangleは麺とかパイプ作る時、重なってしまうのを避けるために使ったりする。
後半にdetangleの記事。
https://qiita.com/jyouryuusui/items/2269879e46f9915517ad
ForEach(loop)
For-Loop with Feedback 同一オブジェクトに同じ処理を繰り返す
For-Each Primitive プリミティブごとに処理(1ポリごとに処理)
For-Each Point ポイントごとに処理
For-Each Connected Piece 接続されているプリミティブごと(つながっているポリゴンごと)に処理する
For-Each Named Primitive Nameアトリビュートで設定された名前ごとに処理
For-Each Number よくわからない
※nameアトリビュートはnameSOPで設定できる。
Wire Deformの使い方
参考:「Rigging Series 2」1:12:30あたりから
https://youtu.be/vinCWv20Ib4?t=4365
変形アニメーションを〇〇フレームで固定する(SOP内)
Time Shift SOP
初期設定ではエクスプレッションが設定されているので、
「Frame」のパラメータを右クリックし、「Delete Channels」で解除。
固定したいフレーム数を入れる。
BlendShapeと組み合わせることで、どんな変形アニメでもループさせることができる。
オブジェクト階層でobjectmergeに相当するもの
Fetch
キャラクターを動かす際、他のキャラの入っているHDAなりsubset内のオブジェクトをペアレントしたい時に使う。
・ペアレントがうまくいかない場合
ペアレントする前に「Use Parent Transform of Fetched Object」にチェックを入れ、
その後ペアレントをする。後からチェックを入れると、オブジェクトがとんでもない所へ飛んだりする。
オブジェクト表面のポイントにペアレント(H.18)
Constrainsシェルフの「Points」を使う
1.表面にくっつけるオブジェクト(Nullとか)を選択してEnter
2.ペアレントされるオブジェクト(体とか)を選択してEnter
3.オブジェクトのポイントを選択してEnter
※リグに絡めると重くなる場合があるので注意。
ボーンからパスを作る
BoneCaptureLine SOP
Capture Geometryでbiharmonicを使うと生成されるSOP群の一つ。単体でも使える。
「Extra Regions」にボーンの名前をつっこむとラインが作られる。
記述例「 ../../bone1 ../../bone2 ../../bone3 」
UseBoneLinkにチェックを入れる。