Voronoi Fracture SOPは、二つ目に受け取ったポイントをボロノイ図の母点として、一つ目に受け取ったメッシュを粉砕するノードです。
入力ノードや出力に関する情報はSideFXのマニュアルをご覧ください。
https://www.sidefx.com/ja/docs/houdini/nodes/sop/voronoifracture.html
ボロノイ分割とは
空間上に任意で配置された点を母点とし、各母点とほかの点との距離を領域として表したものです。
上の画像はBoxのYSizeを0.1として上から見たもの(疑似的に二次平面としたもの)ですが、分割線は、任意の隣接する二点の二等分線の線分になります。
例えば母点が空間内に均等に配置されている場合、各点の距離は等しいため分割線は格子状になります。
入力パラメータ解説
上のスクリーンショットのなかでVoronoiFractureノードが入力を受けている二つのノード「Box」「Points from Volume」のパラメータを変更したときのVoronoi Fractureの出力の変化を解説します。
入力1(Box)
Sizeを変えると(入力2のポイントが何かにも依りますが)各分割ピースが大きくなるのではなくピースの数が増えます。ピースの規模自体は変化はありません。
Uniform Scaleを変更しても同じです。このバーを動かしたほうがわかりやすいでしょう。
Rotateを変えると出力結果も変わります。
ポイントの位置は変わらずBoxが回転するので、分割後のピースは変わります。
入力2(Points from Value)
左はPoint Separationが0.1のとき、右が0.4のときです。小さい空間に多すぎるポイントはFractureを重くする要因になりますので、適切な値を使います。
Isovalueを変えてもポイントの密度が変わります。
Jitter SeedとJitter Scaleに関して、ジッター(微震)が不要であればJitter Scaleを0にします。上は、左が0の時で、ポイントが規則的に並んでいます。値を上げれば規則からずれ、ランダムに似た配置になります。
さらにランダム要素を増やしたいならJitter Seedの値を変えます。この二つを使えば無数の母点をシミュレーションできるでしょう。
ランダム要素ならGrid Offsetを使えます。発生するポイントのオフセット(中心が原点からどれくらい移動するか)を変更します。
Pointとして入力するノードであればCurveなども使えます。プロシージャルとしてリアルタイムに変化を見れますので、少ない分割なら便利です。
利用方法
通常の使い方としては破壊のシミュレーションに使います。
オブジェクトが壁や床に当たったら粉々に砕けるときの制御として任意の形状に分裂させることができます。
ランダムに分割されることを使って自然を表現できます。
例えば流氷や岩の配置などを任せることができます。
また、そのまま使わずに1ピースを取り出して山のベースに使うなどもいいでしょう。