HOME

Maneki Pipeline

ゲーム開発のためのプロシージャル

Orientation Along Curveノードでカーブ(PolyLine)の法線方向を取得する

polylineの方向を参照する便利ノード

環境

HoudiniFX 20.5.613

確認用の軸モデルを作成

PolyLineの軸方向を取得する前に、ギズモで見るような軸方向表示用のモデルを作成する。
Visualize Rigノードがちょうど良さそうな形状をしているので、

VisualizeRigノードがギズモの軸オブジェクトっぽい形状を含んでいるので流用する

AllowEditingContentsでノードを展開し、

VisualizeRigを編集可能にする

操作用の白い部分は不要で軸部分だけ欲しいのでノードの中に入ってこのあたりをコピー

必要な部分をコピー

margeすると都合の良さそうなモデルができた

margeするとギズモに見られるような軸オブジェクトができた

サイズ調整用の簡単なエクスプレッションも追加

サイズも変更可能にした

このオブジェクトでOrientation Along Curveの動作を確認していきます。

Orientation Along Curveノード

PolyLineをベースに何かを作成する場合、そのカーブの方向を参照することが非常に多い。
そういった場合に便利に使える、カーブの向きを取得できるOrientation Along Curveノードがある。

Orientation along Curve
https://www.sidefx.com/ja/docs/houdini/nodes/sop/orientalongcurve.html

polylineの法線方向がアトリビュートとして簡単に取得できる

polylineのNとupを取得するのが主な目的のノードで設定を変更することで

カーブの次や前のpoint方向、もしくはその平均をNとして設定

  • Frame/ Tangent Typeを「Next Edge」 or 「Average of Edge Directions」 or 「Previous Edge」に変更する

最初のup vectorを上方向に合わせてN方向の変化に合わせて傾きを変えていく

  • Frame/ Target Up Vector を 「Y Axis」 に変更する

長さやコンポーネント単位、もしくはカーブ全体でroll値をtwist

  • Additional Rotations/ 「Apply Roll or Twist」 のチェックボックスを有効化
  • Additional Rotations/ Twist Per を 「Per Unit Distance」 or 「Per Edge」 or 「Per Full Curve by Distance」 に変更する

といったような設定でNとupアトリビュートの作成ができる


便利です。
余談ですがAIに聞くと、「PolyLineは厳密にはカーブ」ではないという話をされたのですが、このノード名から察するにPolyLineとはカーブの一種であるというのが公式の見解なのでしょうね。

fish_ball

プロシージャル魚類