Houdini 18 SOP No.15 “Group Find Path SOP”


~“Group Find Path SOP” Group編-3~

前回に引き続きHoudini18.0にて新規に追加されたSOPノードの解説を行います。
前回の記事をご覧になられていない方はこちらからご覧ください。

※本記事ではHoudini 18.0.416を使用しています。

今回はGroup Find Path SOPについて解説していきます。

 

Group Find Path SOP

このノードは、Houdini 18.0にアップデートされた際に新しく追加されたノードになります。
このノードの機能は、上流で作成されたグループをつなぐ最短経路をグループ化するものです。作成される経路は曲がる回数・距離が最も小さくなるように設定されています。
このノードの使い方は簡単でグループを作成した後にその下流に「Group Find Path SOP」をつなぐだけになります。

 

では具体的な使い方を説明します。

まず初めに、経路を求めるためのベースのグループを用意します。
今回は下の画像のような
 Size:10×10
 Rows:30
 Collums:30

のグリッドに対して0番目のプリミティブから100個に1つずつグループとして指定しているジオメトリを使用します。

このようにグループが指定できたら、その下に「Group Find Path SOP」つなぎます。

そうすることによって下のような結果を得ることができます。
このように最短経路を求めてそれをグループ化することができます。

以上が基本的な機能になります。

 

それでは次に詳しいパラメータと使い方を説明していきます。

下の画像がパラメータになります。

基本的なパラメータは前回の「Group Expand SOP」と共通部分があります。
一番上の赤く囲われた「Input Group」は上流で作成されたグループを指定するパラメータです。
その次の赤く囲われた「Output Group」は経路が計算されたグループを新しくアウトプットする際の名前を指定することができるパラメータです。
この部分は共通点となります。

このパラメータの最大の特徴は、その下の「Path」のフォルダの中に入っているパラメータになります。

「Path Type」では経路の作成方法を指定することができます。
この中には「Paths through Each Input Group Element in Order 」・「Loops or Rings Starting from Elements in Input Group」・「Paths between Start/End Pairs in Input Group」の3つがあります。
各タイプは以下のような仕様となります。
 Paths through Each Input Group Element in Order 
  入力グループ内の隣接する要素を接続する一連のサブパスとして構築されます。
 Loops or Rings Starting from Elements in Input Group
  パスを指定するための開始要素のみを使用して多数のサブパスを構築します。
 Paths between Start/End Pairs in Input Group
  入力グループはペアになり、各ペアは新しいパスの開始要素と終了要素を指定します。

下の画像が各タイプ別の結果になります。

このように最短経路を計算してグループを作成することができます。

また、「Path Ending」では作成されるループタイプを設定することができます。

こちらも「Stop at End」・「Extend to Edge」・「Close Path」の3種類があります。
各設定は下のような仕様になります。
 Stop at End
  エレメント間の最短経路を計算します。
 Extend to Edge
  急な曲がり方をすることなくエッジまでの可能な限り経路を延長します。
 Close Path
  作成されたパスと交差することない、終点から始点へのパスを作成します。

以下が実際に設定されたタイプになります。
(Path Typeは「Paths through Each Input Group Element in Order 」に設定されています。)

このように作成されるパスを変更することができます。

また「Path Ending」の下にあるトグルの「Avoid Self Intersection」を無効にすることによって下の画像のように経路を変更することが可能になります。

最後に「Edge Path Style」でも経路を変更することができます。

こちらにも「Prefer Loop and Ring」・「Force Edge Loop」・「Force Edge Ring」の3種類を設定することができます。こちらはエッジ間のパスを見つける場合、エッジパススタイルを使用して、リングとループの両方を許可するか、ループのみを許可するか、リングのみを許可することができます。

※この設定は「Group Type」が“Edge”の時のみ有効になります。

実際の結果は下のようにあります。

このようにエッジのグループを変更することができます。

以上が具体的な説明となります。

 

このように指定されたグループ間のつなぐ経路をグループ化することができます。それによって、この機能を用いた通路や道の作成を行うことができます。

こちらの記事のhipファイルが以下のURLからダウンロードできますので興味のある方はご確認ください。 https://www.dropbox.com/sh/1hme1jaoycoep0p/AACgbacrkBc8zAN5gMZ9JfwRa?dl=0