Houdiniは、異なる分野/コンテキストを使用することで、異なる種類のノードを異なる種類の作業や作業用に分けています。3Dイメージやアニメーションを作成するために必要な様々な部門/ディシプリンを考えてみてください。ハイレベルな視点から見ると、一般的に以下のようなサブカテゴリーに分けることができます:
これらの各分野に対して、Houdiniは特定の領域で動作するノードを備えています。Houdiniは、これらのコンセプトを異なるコンテキストに分類しています。Mayaで言えば、異なるシェルフツールセットと同じです。Houdiniの各ノードタイプ/コンテキストは、オペレーターとして記述されています。
オブジェクトはすべてのシーンのトップレベルに位置します。各セッションまたはHoudiniシーンは、イメージを作成するために特定の方法で配置された一連のオブジェクトで構成されています。オブジェクトレベルのジオメトリネットワークは、そのネットワーク内にジオメトリまたはSOPノードを保持します。 GEOネットワークは、一連のSOPノードまたはサーフェスオペレータで構成され、これらのノードを配線することでサーフェスデータを作成/操作します。ベベル(Bevel)、押し出し(Extrude)、UV編集(UV Edits)などのさまざまなサーフェスオペレータは、このコンテキスト内で実行されます。
Houdiniの他のほとんどのノードフローと同様に、COPノードは上から下へ流れます。ノードをビューアにドラッグすると、そのノードの出力が表示されます。COPは、テクスチャイメージの生成または操作に使用できます。 要するに、2D画像を処理するための合成ツールです。しかし、他のコンテキストからデータを流し込んで、COPの中で処理し、他のコンテキストにフィードバックすることもできます:
データのエクスポートまたはレンダリングに関連するもの。ROPはレンダリングの依存ネットワークを確立する。HoudiniのデフォルトレンダリングはMantraです。その他の有名なサードパーティレンダラーには、Renderman、Redshift、Octaneがあります。 最近SideFXは、Solarisツールセットの一部としてKarmaと呼ばれるより強力な新しいレンダラーを導入した。その結果、KarmaはUSDシステムとの関係から、LOPsネットワークの下で発見された:
マテリアル作成に関連するすべて。MAT コンテキストは、ジオメトリノードに適用されるシェーディングとマテリアルの依存関係を記述します。MAT と VOP は少し異なります。MATはマテリアルの最終的な外観とサーフェスプロパティを記述します。VOPは、マテリアルがどのように機能するかを定義する実際のシェーダネットワークを作成します。
各マテリアルまたはMATネットワークの中核は、基本的にVOPネットワークです。ノードはVOPで接続され、実行可能なVEXコードにコンパイルされます。VOPは単なるマテリアルではありません。VOP’sはUnrealのMaterial EditorやMayaのHypershade、Softimage XSIのICEに似ています。
チャンネル演算子として知られています。CHOP は、時間ベースのチャネルデータを操作するために使用されます。VOP や SOP と組み合わせてモーショ ングラフィックスによく使用されます。オーディオファイルの操作や処理にも使用できます。アニメーションやパーティクルは、CHOPでスポーン/ロードされたオーディオファイルによって影響を受けます。
CHOPはリギングにも使用され、キャラクタのコンストレイントを確立します。エイムコンストレイント、オイラー回転、インバースキネマティクス。これらはすべてCHOP内で処理できます:
パーティクル、ソフトボディ物理、リジッドボディのシミュレーションとダイナミクスに関連する情報を作成または影響するノードを含みます。DOPは、群衆の動き、炎、煙、白波のエフェクトなど、FXアーティストのツールボックスです。POPはDOPのサブセットで、特にパーティクル操作に関連しています:
HoudiniのPDGシステムの中核を成す。その中核となるTOPネットワークは、タスクの自動化とワークフローの高速化に使用できる精巧なタスクランナーです。一般的に実行されるタスクやジョブは、Tractorでスケジューリングしたり、Work Itemとして知られる一連のプロセッサを介して並列実行することができます:
USDデータを扱うためのノードで、キャラクター、小道具、ライティング、レンダリングを記述します。ライティング・オペレーターの略:
Houdiniの内部スクリプト言語。C言語をベースとし、C++とRSLからアイデアを借用したVEXは、Houdiniを拡張したり、複雑なネットワークやシステムをプログラムで構築するためによく使用されます。カスタムのノードやオペレータをVEXで記述することができます。Houdini内のデータ操作もVEXで行うのが一般的です。しかし、VEXは従来のスクリプティングに取って代わるものではありません。HoudiniはPythonをサポートしており、HoudiniのUIを拡張するためにVEXの代わりに使用されることが多い。
Houdiniは第3のスクリプト言語であるhscriptをサポートしている。Hscriptもまた、HoudiniのUIを拡張したり、より高度な式を記述するためによく使用されます。しかし、最近ではその人気と使用率は若干衰えてきているようです。