Houdini Engineを使用する時、Houdini Engineは内部でHoudiniシーンを管理しています。 HoudiniアセットがMaya内でインスタンス化されると、Houdini Engineは実際にHoudiniシーン内でHoudiniアセットをインスタンス化します。 Mayaからの入力ジオメトリがHoudiniアセットに接続されている場合、MayaジオメトリがHoudiniシーンに複製されます。 Mayaで設定されているアセットパラメータも、Houdiniシーンでミラー化されます。 最終的に、HoudiniアセットがHoudiniシーンから出力するジオメトリは、複製してMayaに戻されます。 つまり、内部のHoudiniシーンが、Houdini Engineの動作の中核を成しています。

通常、内部はユーザから隠されています。 しかし、場合によっては、アセットが期待通りに動作しない理由を調査しなければなりません。 そのため、内部のHoudiniシーンを検査できるようになることが非常に重要です。 これが特に当てはまるのは、アセットがHoudini内部では正常に動作しているのに、Houdini Engineを介すと正常に動作しないような場合です。

Houdini Engine → Debugging メニューには、内部のHoudiniシーンを表示したり、保存するオプションがあります。 内部のHoudiniシーンは、別のHoudini UIセッションで検査することができます。 これは、様々なHoudini Engineの問題をトラブルシューティングする時に大変便利です。 またこれは、内部のHoudiniシーンを検査するには、Houdini UIを実行できるライセンスが必要なことを意味しています。

このデバッグ機能には、もう1つ面白い使い方があります。 ジオメトリを入力する際に、Houdiniシーンに渡されるデータおよびメタデータを正確に確認できることです。 例えば、単純にnullアセットを作成し、そのアセットにMayaジオメトリを接続します。 すると、Houdiniシーンから正確なデータとメタデータを確認することができます。 この方法のほうが、ドキュメントをチェックするよりもはるかに素早くて確実です。

その他の便利なワークフローとして、この内部のHoudiniシーンを表示しながら、アセットを作成することが挙げられます。 複製されたMayaジオメトリをこのHoudiniシーンで即座に使用できるようになるのが利点です。 アセットの作成者は、アセットでMayaジオメトリがどのように動作するのかを直接テストすることができます。 さらに、作成者はHoudiniとMayaを同時に実行することもできます。 その後、作成者はHoudini UIでアセットに変更を加えて、そのアセットをHoudini UIで保存し、Maya内部でアセットをリロードして、即座に変更を確認することができます。

Houdini Engine Debugger

Houdini Engine Debuggerを使用するには、Mayaをデバッグセッションに直接接続する必要があります。 デバッガーの自動開始オプションはないため、デバッグセッションは個々に開始する必要があります。

Houdini Engine Debuggerセッションを使用するには

  1. 最初に、 Window ▸ Houdini Engine Debugger と移動してHoudini Engine Debuggerセッションを起動し、セッションタイプの1つを開始します。

  2. Mayaでは、スクリプトエディタでセッションオプション変数を設定してからプラグインをロードするか、またはプラグインを通常通りにロードしてから、 Houdini Preferences Window を開き、Debuggerセッションの ポートまたはパイプ名 を設定します。その後、プラグインをアンロードおよびリロードして、デバッグセッションの使用を開始します。

例えば、デバッガーにソケットセッションがある場合、ポート9090を以下のように設定します:

optionVar -iv "houdiniEngineSessionType" 1;
optionVar -iv "houdiniEngineThriftPort" 9090; 

デバッガーが“hapi_debug_session”という名前のパイプを使用している場合、以下のように設定します:

optionVar -iv "houdiniEngineSessionType" 2;
optionVar -sv "houdiniEngineThriftPipe" "hapi_debug_session";
optionVar -iv "houdiniEngineSessionPipeCustom" 1;

いったん接続したら、Mayaでインスタンス化されているすべてのアセットは、Houdiniセッションでもインスタンス化されます。 パラメータ値と入力ジオメトリも、クック後にHoudiniシーン内で反映されます。 Houdini内でユーザが変更を行なった場合(パラメータ、ノードステート、ネットワークグラフなど)、Mayaで変更を反映させるには、アセット定義をHoudiniで保存して、Mayaでリロードする必要があります。

デバッガーを終了したら、次回プラグインをロードするときのために、プリファレンスをリセットして通常のBack End設定に戻します。

ソケットまたは名前付きパイプセッションを設定する方法の詳細は、セッションセクションを参照してください。

Maya

はじめよう

入力および出力のジオメトリ

Houdini Engine for Mayaを使用する

リファレンス