On this page | |
Since | 17.5 |
このノードは、ROP Fetch TOPノードと中にGeometry ROPノードが入ったROPネットワークを含んだサブネットです。 Geometry ROPノードのパラメータは、このノードのインターフェス上にプロモート(昇格)されています。 ROP Fetchノード関連のパラメータ、このノードを使って分散シミュレーションのワークアイテムをクックするためのコントロールも利用可能です。
さらに、このサブネットには、そのROP Geometryノードと併用可能なSOPネットワークがダイブ(中に入るための)ターゲットとして含まれています。 デフォルトでは、ビルトインのSOPネットワークは無効になっていて、 Use External SOP トグルが無効な場合にのみ使用されます。
Tip
このノードでクックするSOPネットワークがスレッド化されている場合(シミュレーションの場合がほとんど)、コンピュータのCPUリソースの大半を消費することになります。 そういった理由から、同時に1個のワークアイテムのみをクックするようにしてください。
Local Schedulerの場合だと、 ROP Geometry Output ノード上に Single ジョブパラメータを追加し、それを有効にします。
HQueue Schedulerの場合だと、 CPUs per Job ジョブパラメータを追加して設定します。
Tip
-
$HH/help/files/pdg_examples/top_distributedsim
のサンプルでは、このノードを使用して、分散シミュレーションをクックする方法について説明しています。 -
$HH/help/files/pdg_examples/top_rop
のサンプルでは、このノードを使用して、ソースジオメトリとシミュレーションジオメトリをディスクにキャッシュ化する方法について説明しています。
パラメータ ¶
ROP Geometry ¶
Evaluate Using
TOPノードがワークアイテムを生成して実行する方法を決めます。
Single Frame オプションを使用すると、このノードは、上流のフレーム毎に1個のワークアイテムを生成します。 Frame Range オプションを使用すると、このノードは、上流のワークアイテム毎に、且つ、フレーム範囲内のフレーム毎に1個のワークアイテムを生成します。 ROP Node Configuration オプションを使用すると、PDGはフレーム範囲オプションを渡さずにROPをクックして、そのターゲットROP上に設定されている設定を使用します。 Automatic オプションを使用すると、このノードは入力の有無に基づいて自動的にノードを設定します。
Single Frame
このノードは、上流のワークアイテム毎に1個のワークアイテムを生成し、その新しいワークアイテムのフレームは上流のワークアイテムのフレームに合うように設定されます。 何も入力ノードがなければ、このノードはフレーム1に設定された1個のワークアイテムを生成します。 この単一フレーム値は、 Override Frame パラメータによって上書きすることができます。
Frame Range
上流のワークアイテム毎に、このノードは全フレーム範囲でワークアイテムを生成します。 上流のワークアイテムが何もなければ、このノードは、指定したフレーム範囲で一連のワークアイテムを生成します。
Automatic
ノードに入力があれば、入力毎に1フレームのワークアイテムを生成します。 ノードに何も入力がなければ、ノードの全フレーム範囲でワークアイテムを生成します。
ROP Node Configuration
上流のワークアイテム毎に、このノードは ROP Path をクックする1個のワークアイテムを生成し、PDGはそのROPノードに何もフレーム範囲設定を 渡しません 。 クックするフレーム数は、そのROP自体のパラメータで決まります。
Override Frame
このパラメータを有効にすると、 Single Frame Evaluationモードのフレーム番号が上書きされます。
Frame Range
Frame Generation を Frame Range に設定した時に使用する開始/終了/ステップ範囲。
Expand Input Files Across Frame Range
入力ファイルリストをフレーム範囲に分散させます。
例えば、上流のワークアイテムが100個の出力ファイルを持っていて、このノードのフレーム範囲が1から50に設定されている場合、 このノード内の各ワークアイテムは2個の入力ファイルを持つようになります。 1番目のワークアイテムはファイル1とファイル2を持ち、2番目のワークアイテムはファイル3とファイル4を持つなど。
このパラメータは、 Evaluate Using が Frame Range に設定されている場合にのみ利用可能です。
ROP Fetch ¶
Generate When
このノードがワークアイテムを生成するタイミングを決めます。 このノードがどの生成モードを必須にしているのか、もしくは、ワークアイテムを動的に生成させる必要があるのかどうか分からないのであれば、通常では、これを“Automatic”のままに設定してください。
All Upstream Items are Generated
このノードは、すべての入力ノードが自身のワークアイテムを生成した時にワークアイテムを生成します。
All Upstream Items are Cooked
このノードは、すべての入力ノードが自身のワークアイテムをクックした時にワークアイテムを生成します。
Each Upstream Item is Cooked
このノードは、入力ノード内のワークアイテムがクックされる度にワークアイテムを生成します。
Automatic
入力ノードの生成モードに基づいて生成モードが選択されます。 入力ノードのどれかがその入力のクック時にワークアイテムが生成されている場合、このノードには Each Upstream Item is Cooked が設定されます。 そうでない場合、 All Upstream Items are Generated が設定されます。
Cache Mode
ワークアイテムから目的のファイル結果がレポートされるように、プロセッサノードがそのワークアイテムを制御する方法を決めます。
Automatic
目的の結果ファイルがディスク上に存在すれば、そのワークアイテムはスケジュールに組まれずにクック済みとマークされます。 そのファイルが 存在しなければ 、そのワークアイテムは通常どおりにスケジュールに組まれます。 上流のワークアイテムの依存関係がクック中に新しいファイルを書き出す場合、このノード内のワークアイテムのキャッシュファイルもout-of-date(古い)としてマークされます。
Automatic (Ignore Upstream)
Automatic と同様ですが、上流のファイルの書き込みは、このノード内のワークアイテムのキャッシュファイルを 無効にしません 。 そして、このノードは自身のワークアイテムの出力ファイルのみをチェックします。
Read Files
目的の結果ファイルがディスク上に存在すれば、そのワークアイテムはスケジュールに組まれずにクック済みとマークされます。 そのファイルが存在しなければ、そのワークアイテムは失敗とマークされます。
Write Files
目的の結果ファイルがディスク上に存在していても、ワークアイテムが常にスケジュールに組まれ、その目的の結果ファイルを無視します。
Cook Type
このノード内のワークアイテムをクックする方法を決めます。 例えば、ワークアイテムをIn-Process、Out-of-Processのどちらでクックするのか、または、サービスを使用してクックするのか決めます。
Service Name
Cook Type を Service に設定した場合、このパラメータを使用して、そのサービスの名前を指定します。 サービスの使用方法の詳細は、PDG Service Managerのドキュメントを参照してください。
Reload Parm Path
有効な時、各フレームのクック前に押したいパラメータのパスを指定します。 これは、手動でReloadボタンを押して外部リソースをリロードする必要のあるノードを参照しているROPをクックする時に役立ちます。
Reset $HIP On Cook
有効な時、そのジョブ内の$HIP
変数に、そのジョブを投入したマシン上の$HIP
変数の値を設定します。
これを使用することで、PDGクック開始時にシーンファイルがスケジューラの作業ディレクトリにコピーされた時に、そのシーンファイル内の$HIP
ベースのファイル参照が有効な状態に維持することができます。
よって、クック中にオリジナルの.hip
ファイルを安全に修正することができます。
Ignore Scene Load Errors
このパラメータを有効にすると、ワークアイテムは、.hip
ファイルを読み込む際に発生したエラーを無視します。
これは、 ROP Path のクックに関係するノードと干渉しない読み込みエラーがシーンに存在する場合に役立ちます。
Frames and Batching ¶
All Frames in One Batch
有効にすると、同じフレーム範囲のワークアイテムがひとまとめにグループ化されて、それが単一ジョブとしてスケジュールに組まれます。 これは、各フレームがその前フレームに依存するようなシミュレーションで使用し、そのメリットは、すべてをメモリに維持できることです。
Cook Batch When
バッチフレームをスケジュールに組むタイミングを決定します。
デフォルトでは、全フレームの依存関係がクックされたら、そのバッチがスケジュールに組まれます。 しかし、1番目のフレームがクックされるとすぐにそのバッチのスケジュールを組むようにすることができます。
All Frames are Ready
バッチ内の全フレームのすべての依存関係が整った時にのみ、そのバッチのスケジュールが組まれます。
First Frame is Ready
1番目のフレームの準備が整うとすぐに、そのバッチのスケジュールが組まれます。
PDGに使用されているROPラッパースクリプトは、以降のフレームが正しくそれらの依存関係を待つようになっているので、こういうことが可能になっています。 各フレームの前に依存関係の状態をチェックするジョブが走っているので、PDGと通信することで、この処理が行なわれています。 これは、若干ネットワークにオーバーヘッドが発生し、そのジョブとPDGとの間で継続して通信する必要があります。
このオプションは、 Composite ROPノードをクックする時は 利用できません 。 その理由は、COPファイルノードは1番目のフレームに対して入力ファイルシーケンス全体を読み込めるようにしなければならないからです。
Fixed Number of Frames are Ready
フレーム範囲内の最初のフレームから数えて指定した数のフレームが依存関係をクックしたらバッチがスケジュールに組まれます。 このフレームの数は、 Number of Frames パラメータで指定します。
例えば、バッチがフレーム1からフレーム24までクックし、 Number of Frames パラメータが6に設定されている場合、そのバッチは、最初のフレーム1から6まで依存関係がクックされた後にスケジュールに組まれます。
Percentage of Frames are Ready
指定した割合のフレームの依存関係がクックされるとバッチがスケジュールに組まれます。 このフレームの割合は、 Percentage of Frames パラメータで指定します。
Automatically Set Missing Frames
有効にすると、このノードは、frame
とrange
の値が見つからないワークアイテムに対して、それらの値の割り当てを試みます。
これは、入力のワークアイテムの数に基づいてrange
を判定し、入力リスト内のワークアイテムの位置に基づいてframe
を設定します。
入力のワークアイテムの 一部 だけframe
がない場合、この挙動だと整合性が合わなくなる可能性があります。
Resume Partially Cached Batches
このノードで生成されたバッチが部分的にキャッシュ化された出力ファイルからクックを再開するかどうかを決めます。 シミュレーションにおいてDOPネットワーク自体が既にシミュレーションキャッシュファイルを書き出すように設定されている場合にのみ、このオプションを有効にしてください。
Distribution ¶
Distributed Sim
有効にすると、このノードは、ターゲットROPを分散シミュレーションの一部として扱うようになります。 これは、分散シミュレーションの設定をするパラメータを有効にし、フレーム生成パラメータを無効にします。
Control DOP
分散シミュレーション用のControl DOP。
Custom Tracker Port
このトグルを有効にすると、このパラメータで指定したポートが、ジョブ間でスライス情報を送信するsimトラッカーで使用されます。 このトグルを無効にすると、このパラメータが無効になり、PDGは利用可能なポートを自動的に使用します。
Custom Web Port
このトグルを有効にすると、このパラメータで指定したポートが、分散シミュレーションの状態を監視するWebページのホストに使用されます。 このトグルを無効にすると、このパラメータが無効になり、PDGは利用可能なポートを自動的に使用します。
Verbose Tracking Logger
このトグルを有効にすると、分散simトラッカーの詳細ログメッセージが有効になります。
Slice Type
分散シミュレーションに使用するスライスのタイプ。
Particles
分散シミュレーションでパーティクルスライスメソッドを使用します。
Volumes
分散シミュレーションでボリュームスライスメソッドを使用します。
Slice Count
分散シミュレーションに使用するスライスの数を指定します。
このパラメータ設定は、 Slice Type が Particles に設定されている場合にのみ利用可能です。
Slice Divisions
分散シミュレーションに使用するボリュームのX,Y,Zの分割数を決定します。
このパラメータ設定は、 Slice Type が Volumes に設定されている場合にのみ利用可能です。
Debugging and Performance ¶
Enable Performance Monitor Logging
有効にすると、指定したROPがクックされた時にPerformance Monitorが有効になります。 そのPerformance Monitorがパフォーマンス情報をワークアイテムログにプリントします。
Performance File
有効にすると、このパラメータは、Performance Monitorの出力のディスク上の保存先を決めます。 無効にすると、代わりに出力はワークアイテムの出力ログに書き出されます。
指定したファイルの拡張子が.csv
の場合、出力はCSV形式でエクスポートされます。
それ以外の場合、HoudiniのPerformance Monitor出力の構文で保存されます。
その形式のファイルは、Performance Monitorペインに取り込んで閲覧することができます。
ROPクックを実行するプロセス毎に1個のファイルが書き出されます。
例えば、バッチを有効にすると、バッチプロセス毎に1個のhperf
ファイルが書き出されます。
すべてのフレームを別々のプロセスでクックすれば、フレーム毎に1個のパフォーマンスファイルが書き出されます。
このパラメータは、 Enable Performance Monitor Logging が 有効 な時にのみ利用可能です。
Save Debug .hip File
有効にすると、指定したROPノードを含んだ.hip
ファイルの状態が、そのクックが完了した後にここで指定されたパスに保存されます。
これには、すべてのWedgeパラメータ、環境の変更、ネットワークのクックにより変更されたシーン状態が含まれます。
ROPの評価エラーが原因でクックが失敗した場合であっても、その.hip
ファイルは保存されます。
Scripts ¶
Manual Render ¶
Schedulers ¶
TOP Scheduler Override
このパラメータは、このノードのTOPスケジューラを上書きします。
Schedule When
有効にすると、このパラメータを使用して、このノードのどのワークアイテムをスケジュールに組むのかを決めるエクスプレッションを指定することができます。 そのエクスプレッションが指定されたワークアイテムに対して0を返すと、そのワークアイテムはスケジューラに組まれずに、即座にクック済みとしてマークされます。 そのエクスプレッションが0以外の値を返すと、そのワークアイテムは従来どおりにスケジュールに組まれます。
Work Item Label
このノードがワークアイテムにどのようにラベルを付けるのかを決めます。 このパラメータによって、固有でないラベル文字列をワークアイテムに割り当てることができ、そのラベルを使用してアトリビュートパネル、タスクバー、スケジューラジョブ名のワークアイテムを区別することができます。
Use Default Label
このノード内のワークアイテムは、TOPネットワークからデフォルトのラベルを使用します。 デフォルトが設定されていない場合は、それらのワークアイテムにはラベルは付きません。
Inherit From Upstream Item
ワークアイテムは親ワークアイテムのラベルを継承します。
Custom Expression
ワークアイテム毎に評価される Label Expression カスタムエクスプレッションをワークアイテムのラベルに設定します。
Node Defines Label
ワークアイテムのラベルをこのノードの内部ロジックで定義します。
Label Expression
有効にすると、このパラメータを使用して、このノードで作成されたワークアイテムに独自のラベルを指定することができます。
このパラメータには、ワークアイテムアトリビュートの参照またはビルトインのプロパティを含めたエクスプレッションを使用することができます。
例えば、$OS: @pdg_frame
は、フレーム値に基づいて各ワークアイテムのラベルを設定します。
Work Item Priority
このパラメータは、現行スケジューラがこのノード内のワークアイテムの優先度を設定する方法を決めます。
Inherit From Upstream Item
ワークアイテムは、親ワークアイテムの優先度を継承します。ワークアイテムに親ワークアイテムがなければ、その優先度は0に設定されます。
Custom Expression
ワークアイテムの優先度は、 Priority Expression の値に設定されます。
Node Defines Priority
ワークアイテムの優先度は、このノード自身の内部優先度計算に基づいて設定されます。
このオプションは、 Python Processor TOP, ROP Fetch TOP, ROP Output TOPのノードでのみ利用可能です。 これらのノードは、各自のノードロジックで実装された優先度設定スキームを定義しています。
Priority Expression
このパラメータには、ワークアイテムの優先度を設定するためのエクスプレッションを指定します。 このエクスプレッションは、ノード内のワークアイム毎に評価されます。
このパラメータは、 Work Item Priority が Custom Expression に設定されている場合にのみ利用可能です。
Examples ¶
ROPGeometryOutput Example for ROP Geometry Output TOP node
このサンプルでは、ROP Geometry Output TOPを使用して、SOPネットワークをクックする方法を説明しています。
VariableFrameRange Example for ROP Geometry Output TOP node
このサンプルでは、ROP Geometry TOPでエクスプレッションを使用して、可変するフレーム範囲を設定する方法を説明しています。
See also |