16ではこれまでのGroupノードが使用用途別に複数のノードに分割されました。そこではじめに、Groupノードを使用してみましょう。Groupは必要に応じてコンポーネントをまとめてくれるものであり、非常に強力です。多くのフィルターノードと連携して動作することができます。Groupノード概要グループは、ポイントやフェースの名前をもった集合体です。グループサーフェスノードを使用すると、入力ジオメトリ内のポイントまたはフェースをさまざまな基準に基づいてグループにソートできます。他のオペレーターは、副作用としてグループを作成することもできます。ポイントまたはプリミティブで動作するほとんどのノードは、ポイント/プリミティブ全体ではなく、入力ストリーム内の特定のグループに対してのみ実行することができます。従って、特定のプロパティに基づいてポイントやプリミティブをグループ化することができます。グループの作成後、ノードを追加し、そのグループを指定することができます。ポイントが削除された場合、HoudiniはHoudiniはそのポイントが属するすべてのポイントグループからそのポイントを自動的に削除します。グループを作成するために次のパターンを使用することが可能です。SOPで作成されたポイント/プリミティブの名前付きグループを指定できます。グループ名にはパターンマッチング(*、?、[])を使用できます。*には、armで始まるすべてのポイント/プリミティブグループが含まれます。^はパターンを{}で囲むことでパターン内で使用できます。*}にはarmで始まる名前のグループはすべて含まれますが、arm3は含まれません。n-mnからmまでの番号をもつコンポーネント。(n,mを含む)例:0-10と指定した場合n-m:step各stepをスキップして、nからmまでの番号をつけたコンポーネント。1〜100:2は、1〜100の間のすべての番号を意味します。例:0-10:2とした場合n-m:keep,stepnからmまでの番号をつけたコンポーネント。最初のkeep番号を使用し、その後、すべてのstepをスキップします。例:0-1000:2,5!patternパターンに一致するもの以外のすべてのコンポーネント。!1-10は、1〜10の数字以外のすべてのポイント/プリミティブを意味します。patternは、数値パターン、属性パターン、またはグループ名パターンです。例:!0-10^pattern前のパターンの結果からパターンに一致するコンポーネントを削除します。^10-20は、10〜20の数字を除いて1から100の間のすべての数字を意味します。patternは、数値パターン、属性パターン、またはグループ名パターンです。=、または<=のいずれかのオペレーターに基づいて、アトリビュートが値と一致するコンポーネント。0は、vアトリビュートが0より大きいポイントのグループを作成します。アトリビュート名の後に[index]を使用してコンポーネントを指定できます。[2]はディフューズカラー(Cd)アトリビュートの青色のチャンネルを取得します。便宜上、位置(P)アトリビュートのX軸成分を得るために、[0]、[1]、[2]の代わりに.x、.y、および.zを使用することもできます。(マルチコンポーネントのアトリビュートタイプにコンポーネントを指定しない場合、比較では最初のコンポーネントが使用されます)。0は、Yが0より大きいすべてポイントを含むグループを作成します。bar"のようにスペースが含まれている場合は値の前後に引用符を付ける必要があります。文字列アトリビュートに=、==、および!=を使用するときは、値にワイルドカード(*および?)を使用できます。アトリビュート構文と範囲構文を組み合わせることができます。@id=5-10スペースで区切られた整数値のリストとともにアトリビュート構文を使用することもできますが、リストを引用符で囲む必要があります。string"実際に使ってみようGridにGroupノードをつなげ、GroupノードをさらにColorに接続します。Colorノードを表示して、Colorアトリビュートに任意のカラーを設定します。Typeでどのコンポーネントをグループ化するのか設定します。Groupに下記のような構文を入力します。Nameを入力します。これでPrimitivesタイプのabcというグループが作成され、0-1000のプリミティブを4ずつスキップしてグループ化し、そのグループに色を付けた形となります。Promoteは、入力されたコンポーネントを他のタイプに変換することができます。PromoteでPointsをPritimitivesに変換します。polyExtrudeをグループに対して実行します。サポートまでお問い合わせ下さい。