ノードの機能
いろんなグループの作り方があるがよく使うやつを。思いついたら随時追加。
本記事は個人的な備忘録となっており、補足も最低限となっています。
詳しくはHoudini: ノード備忘録 - 目次をご覧ください
ご指摘等ありましたらこちらまでお気軽にお声がけください。泣いてよろこびます。
ノーマルでグループ
他の機能と組み合わせることが多いのでVEXもしくはVOPで内積(dot)を使うことが多いけど、単純にグループを作りたいときなどに。
エッジいろいろ
角度ベースでグループ化したり、共有されていないエッジをグループ化したり。
ボリュームの利用
とあるジオメトリに入ってる入ってないを判断するのによく使う。他の機能と組み合わせる時はVolumeSampleを使うことが多い。単純に外・中だけでなく深度もとることができる。
volumesample(ボリューム側の入力番号, ボリュームが一つの場合は大抵0, @P);
みたいに書く。※ 書き方よく忘れるので気を付ける
VDBを使用するときDistance VDBとFog VDBで戻り値の範囲と正負が異なるので注意。
グループタイプのコンバート、グループ同士の演算
Group Combineの指定方法。忘れがちなので注意。
ポリゴンの頂点数で指定する
primvertexcount(0, @primnum) == 5
とか。
両端のポイントをグループ化
neighbourcount(0, @ptnum) == 1
とか。
距離でグループ化
length(@P- point(1, "P", 0)) < `chs("thresiold")`
Delete SOP
グループ化とは直接関係ないが様々な指定方法で直接削除できるのでBlast SOPよりも使い勝手が良い場合がある。ローカル変数の$N
は@numpt-1
や@numprim-1
と同値でよく使う。
またDelete Unused Groups
オプションのチェックを入れておくと削除後に使用されてないグループを消してくれる。