まずは下記の記事をご覧ください。
PDGを使用して複数のオブジェクトに対して、テクスチャベイクをまとめて実行する
次にHQueueを使用するために、HQueue自体をセットアップしておく必要があります。
※この操作を行う場合、17.5.259以降を使用することをお勧めします。下記にひっかかる可能性があるためです。
Houdini Main Changelogs
- Fix for bug where Rop Fetch would fail due to a invalid path when the hip file was located at a UNC path on a Windows host.
- Improve hostname resolution in callback server. This may fix issues when PDG host is returning a hostname which is not actually resolvable via DNS
上記2つの準備ができましたら、いよいよTOPsのタスクをHQueueで実行してみましょう。
TOPsにHQueue Schedulerノードを追加します。
TOP NetworkのDefault TOP Schedulerにて、新しく作成したHQueue Schedulerノードを指定します。
HQueue Schedulerノードの設定に戻ります。
Local Share Root Paths
今回はすべてWindowsマシンを使用しているため、Windowsのみ設定しています。
ここは共有ディレクトリのルートパスを指定します。
Load from HQueueボタンを押すと、HQueueに設定が反映されます。
※この時、Windowsはhqserver.shareNetwork.mount.windowで指定されたマウントドライブ名がロードされます。(H:など)このドライブでうまくいかない場合は、IPアドレスやマシン名など絶対パスで指定することをお勧めします。
Working Directory
ワークアイテムが中間ファイルと出力を生成することになる相対ディレクトリです。 中間ファイルはサブディレクトリに配置されます。Local Share Root Pathsから実行するHIPファイルがある場所を指定しています。
HQueue Server
HQueue Serverとポートを指定します。
Universal HFS
Houdiniインストールディレクトリを指定します。
file patternノードやFileノード、Simple Bakerノードなどディレクトリを指定している場所は、ディレクトリを変更します。
更に少しノードを追加し、FBXをロードしてきたら、UVを再レイアウトします。
そして、UVを再レイアウトしたFBXを出力するために、ROP FBX OUTPUTを追加しました。
TopSにもRop Output Geometryがあるのですが、FBXの細かい設定がないのでこちらを使用しています
ROP fetchノードを追加し、FBXの出力を実行するようにしました。
準備はこれで完了です。
Cookを行います!
ジョブがHQueueに投入されます。
FBXとして出力するものと、テクスチャをレンダリングするジョブが投入されています。
更に中をみると今回はワークアイテム(つまり対象のFBX)が5個あるので、ジョブが5個作成され、それぞれのクライアントに割り振られています。
ワークアイテム(ベイクが必要なジオメトリの数)が増えた場合、クライアントPCも増えればベイクの同時作業も楽になりますし、HQueueで管理しているので管理も楽になりますね!
全てのジョブが完了すると指定した場所にFBXとテクスチャが生成されています。
※ベイク作業を実行するクライアントPCには、最低でもHoudini Engineのライセンスが必要になります。HoudiniをインストールしただけではCookできないのでご注意ください。