SOP FindShortestPath SOP 勾配コストやターンコストを追加して、勾配を考慮した経路を探索する。事前にメッシュをConvertline SOPでポリラインのグラフ構造に変換しておき、Wrangleノードをつないで、勾配コストとターンコストを設定する。勾配コストの計算//... 2024.05.30 SOP
VEX ポイントのアトリビュートとグループを転写する リダクションや曲線化などの処理を行ってポイント配置が変わりアトリビュートが消えた場合などに、元のポリラインからポイントアトリビュートを転写する。ポイントのアトリビュートを転写するアトリビュート全種類を調べてコピーしていく。値はパラメトリック... 2024.05.27 VEX
Math パースペクティブ射影変換行列 パースペクティブ射影変換行列はレンダリングやカリング等に使われている。カメラ視点の平面で内外判定することができるので、対象のオブジェクトがカメラに写っているかを判定するのに便利。この座標変換をHoudini上で再現してみる。Houdiniで... 2024.05.11 Math
Polyline ポリラインを任意の長さで分割する //// 線分を分割するためのフラグを立てる// RunOver:Primitives//float threshold = 100; // 区切る長さ(m)float curveLength = primintrinsic(0, "mea... 2024.05.05 Polyline
Polyline 任意の長さ以下のポリラインを消去する //// 任意の長さ以下のポリラインを消去する// RunOver: Primitives//float threshold = 100;float curveLength = primintrinsic(0, "measuredperim... 2024.05.05 Polyline
VEX 合計が1になるn個の乱数を返す オブジェクトを並べる時に、最初と最後の位置は確定しているけど、途中はランダムに揺らぎのある配置にしたいような目的に使う関数。// 合計が1になるn個の乱数を返すfunction float[] randomArray(int num; fl... 2024.05.02 VEX
VEX 境界外を考慮したRay Intersect intersect()で判定が取れない場所も平面式を使い、近いプリミティブの平面を延長した平面とみなして衝突点を計算する。//// 境界外を考慮したRay Intersect//// input0: 対象// input1: 実際のコリジョ... 2024.04.23 VEX
SOP Font SOP 他のノードのアトリビュートを参照するforach_begin2ノードからポイントのvariantアトリビュートを参照する`point("../foreach_begin2",0,"variant",0)`pointwrangle2ノードのD... 2024.04.21 SOP
SOP Switch SOP Switch SOPの条件に書くエクスプレッション例。他ノードのアトリビュートを参照するpoint("op:../foreach_begin1/",0 ,"connectedPrim", 1)detail("op:../pointwrang... 2024.04.19 SOP
Polyline ポリラインをメッシュで区切る メッシュ内を削除するプリミティブの三角形の内外判定をして、内包されている場合はフラグを立てる。//// 点がプリミティブ内に内包されているか判定する// RunOver: Points// input1: primitive////// 外... 2024.04.19 Polyline