On this page |
Houdini Engine for Unityプラグインを使用するには、Houdini Engineセッションが必要です。 セッションは、必要なHoudiniライブラリのロード、Houdini Engineサーバーの起動、Houdini Engineを使用するための環境とプリファレンスのセットアップを行ないます。
HDAをロードしたり、Unity内でHoudiniアセットを作成する際に、このプラグインはセッションの作成と終了を自動的に処理します。 ほとんどの場合、ユーザはセッションを管理する必要がありません。 上級ユーザやセッション関連の問題をデバッグしたい場合などは、 HoudiniEngine ▸ Session メニューからセッションツールを利用することができます。
また、セッションは HoudiniEngine ▸ Plugin Settings ウィンドウの Session セクションで設定することができます。
セッションアーキテクチャ ¶
ほとんどのユーザには必要ありませんが、アーキテクチャは、Houdini Engineの仕組みを理解するのに役立ちます。
アーキテクチャには2つの主要な部分があります。 1つ目は、HARSと呼ばれるサーバーです。 このHARSサーバーは、Houdini binフォルダにあるHARS実行ファイルからスタンドアロンで起動することができます。 または、Houdini Engine SessionSyncなどを使用して、Houdini自体の内部から起動することもできます。 HARSサーバーはHoudini特有の処理を扱います。 2つ目は、HARCと呼ばれるクライアントライブラリです。 プラグインは、このHARCクライアントライブラリを使用することでHARSサーバーへの接続を可能にしています。
プラグインは自動的にHARSサーバーを起動しますが、 HoudiniEngine ▸ Session ▸ Create メニューから手動で起動することもできます(セッションを作成するを参照)。 また、 HoudiniEngine > Session > Connect メニューから既存のHARSサーバーに接続することも可能です(セッションに接続するを参照)。
プラグインはHARCクライアントライブラリを使用してHARSと通信します。
Sessionメニュー ¶
Sessionメニューを使用すると、UnityからHoudini Engineセッションを管理することができます。
-
Create ▸ Pipe Session は、パイプセッションを手動で作成し、現在のデフォルトのセッションとして使用します。既存のデフォルトのセッションは閉じられます(パイプセッションを参照)。
-
Create ▸ Socket Session は、Socketセッションを手動で作成し、現在のデフォルトのセッションとして使用します。既存のデフォルトのセッションは閉じられます(Socketセッションを参照)。
-
Connect ▸ Pipe Session は、パイプセッションを使って実行中のHARSサーバーに手動で接続し、現在のデフォルトのセッションとして使用ます。既存のデフォルトのセッションは閉じられます(パイプセッションを参照)。
-
Connect ▸ Socket Session は、Socketセッションを使って実行中のHARSサーバーに手動で接続し、現在のデフォルトのセッションとして使用ます。既存のデフォルトのセッションは閉じられます(Socketセッションを参照)。
-
Session Info は、Session Infoパネルを開きます。セッション関連の問題のトラブルシューティングに役立ちます。
-
Close Default Session は、既存のセッションを閉じます。
-
Close All Sessions は、すべての開いているセッションを閉じます。
-
Reconnect To Session は、セッションが開いていて使用中の場合、Unityがそのセッションへの接続を失ったときに再接続します。これはUnityコードの再コンパイル(Editorの状態がリセットされます)後に自動的に行なわれ、前に使用していたHoudiniセッションを引き続き使用したい場合に使用します。
-
Restart Session は、現在(デフォルト)のセッションを閉じ、再作成します。これは、Houdiniセッションがエラー状態になり、アセットのロードやクックに失敗するような場合に非常に便利です。セッションが再起動され、ユーザはUnityを再起動することなく作業を続けることができます。
セッションタイプ ¶
パイプセッション ¶
Named Pipe(名前付きパイプ) セッションは、Houdini Engineのメイン処理をUnityプロセス外の別のプロセスで行なうことを可能にします。 Named Pipe は、UnityプロセスとHoudini Engineプロセス間のプロセス間通信に使用されます。 これは、Houdini Engine for Unityプラグインを使用する際に推奨される方法です。
Socketセッション ¶
Socketセッション は、Houdini Engineのメイン処理をUnityプロセス外の別のプロセスで行なうことを可能にします。 Socketセッションでは、 TCPソケット がUnityプロセスとHoudini Engineプロセス間の通信に使用されます。
セッションを作成する ¶
セッションを作成すると、HARSサーバーが手動で起動され、プラグインがそれに接続します。 これを行なうには、 HoudiniEngine > Session > Create メニューを使用します。 その後セッションを閉じるには、 HoudiniEngine > Close All Sessions を使用します。
Note
作成されたHARSサーバーはローカルマシン上で実行されます。
セッションに接続する ¶
セッションに接続する時は、HARSサーバーが既に起動していることが前提となります。 HoudiniEngine > Session > Connect メニューを使用して接続します。 これは、リモートマシンでHARSを実行する場合に便利です。
リモートHARSサーバーに接続するには、以下の手順を実行します。HARSをローカルで実行している場合は、手順1-6をスキップし、リモートをローカルに置き換えてください。
-
Houdiniをリモートマシンにインストールします。
-
ローカルマシンにフォルダ(
C:\\HEngine\\bin
)を作成します。 -
libHAPIL.dll、libHARC.dll、libHAPI.dllを、リモートマシンのHoudiniインストールフォルダ(
C:\\Program Files\\Side Effects Software\\Houdini 18.0.460\\bin
など)からローカルマシンのフォルダ(C:\\HEngine\\bin
)にコピーします。 -
ローカルマシンでUnityを起動します。 HoudiniEngine ▸ Plugin Settings ▸ GENERAL ▸ Override Houdini Install Path メニューに移動し、 C:\\HEngine を設定します(binフォルダではなく、その親のみを使うことに注意してください)。
-
ローカルマシンでUnityを再起動します。
-
リモートマシンでソケットモードを使用してHARSを起動します(
C:\\Program Files\\Side Effects Software\\Houdini 18.0.460\\bin\\HARS -s 9090
)。 -
Unityに戻り、 HoudiniEngine ▸ Plugin Settings ▸ SESSION メニューに移動し、 Socket Session Host Name が正しいIPとホスト名になっていること、および Socket Session Port が9090であることを確認します。
-
HoudiniEngine ▸ Session ▸ Connect ▸ Socket Session メニューに移動します。
正常に接続し、プラグインの機能を使用できるはずです。できない場合は、ポップアップダイアログウィンドウまたはログコンソールをチェックして、エラーや回避策に関する情報を確認します(セッションのトラブルシューティングを参照)。
Important
リモートHARSサーバーに接続する場合、HDAや他の必要なファイルをロードするには、HARSサーバーからアクセスする必要があります。 ローカルマシンとリモートマシンの両方から同じパスでアクセス可能なネットワーク共有ドライブを使用することをお勧めします。
Houdini Engine SessionSync ¶
Houdini Engineの使用について確認したり、HDAを作成したり、HDAの問題のトラブルシーティングを行なうときは、Houdini Engine SessionSync が役立ちます。詳細はSessionSyncを参照してください
セッションのトラブルシューティング ¶
セッションの作成や接続に問題が生じたときは、以下の手順を試してください。
-
HoudiniEngine ▸ Plugin Settings ▸ SESSION で接続設定が正しいことを確認します。パイプセッションを使用している場合はパイプ名が有効であることを確認し、Socketセッションを使用している場合はサーバー名とポートが有効であることを確認します。確認できない場合はデフォルトに戻します。
-
HoudiniEngine ▸ Session ▸ Restart Session を介してセッションを強制的に閉じ、リセットします。これにより現在のセッションは閉じられ、新しいセッションが作成されますが、アセットはロードされません。再起動したら、Unity Sceneの既存のアセットは、パラメータを変更するか、Inspector UIを介してRecookを呼び出すことで、再クックすることができます。再クックすると、アセットが新しいHoudini Engineセッションに自動でロードされます。
-
Houdiniが正しい場所にインストールされていることを確認します。この場所は、プラグイン設定( HoudiniEngine ▸ Plugin Settings ▸ GENERAL ▸ Override Houdini Install Path )で上書きすることができます。
-
Unityを再起動し、もう一度試します。
-
プロセスマネージャを開き、ローカルマシンでプロセスを強制終了します。
-
ローカルマシンを再起動するか、HoudiniおよびUnityプラグインを再インストールします。
どの手順を実行しても解決できない場合は、ログエラーやポップアップダイアログメッセージ、UnityおよびHoudiniのバージョン、ライセンス情報など、問題の詳細をsupport@sidefx.comまでご連絡ください。