On this page | |
Since | 17.5 |
このノードは、hython
を使ってHDAをクックするワークアイテムを生成します。
HDAのパラメータの値は、このノードの HDA Parameters タブで指定することができます。 それらのパラメータは、このノードのワークアイテム上のアトリビュートとして適用され、クック前にそのHDAを構成するジョブ環境で使用されます。
現在のところ、 HDA Processor ノードは、Object、SOP、COP2、LOPのタイプのHDAsに対応しています。
Tip
-
$HH/help/files/pdg_examples/top_roaderbuilder
のサンプルでは、このノードを使用して、デジタルアセット内で定義されたジオメトリを書き出す方法について説明しています。 -
$HH/help/files/pdg_examples/top_feedbackhda
のサンプルでは、フィードバックループ内部でこのノードを使用する方法について説明しています。
TOP Attributes ¶
HDA Processorは、このノードの HDA Parameters フォルダに追加されたすべてのSpareパラメータからワークアイテム上にアトリビュートを作成します。 さらに、以下のビルトインのアトリビュートを作成します:
|
integer |
Batch Mode設定を示します。
|
|
integer |
HDA Processorサービスを使用する時の接続タイムアウト制限(ms)。 |
|
integer |
Cook Batch When設定を示します。
|
|
string |
ワークアイテムのジョブでクックされるデジタルアセットのパス。 |
|
string |
デジタルアセット内のオペレータタイプ。
Operator Typeパラメータを使ってオペレータタイプを指定 しなかった 場合、このアトリビュートには空っぽの文字列が設定され、そのワークアイテムは |
|
integer |
Create File Inputs設定を示します。
|
|
integer |
Missing Input設定を示します。
|
|
integer |
HDAの入力となるファイル入力の数を指定します。 |
|
integer |
Write Outputs設定を示します。
|
|
integer |
デバッグ
|
|
string |
|
|
integer |
|
|
string |
|
|
string |
パフォーマンスモニタのようなデバッグ出力ファイルまたは保存されたシーンをワークアイテム出力としてレポートするかどうかを決めます。 |
|
string |
HDAの入力となるファイル入力のパスのリスト。 |
|
integer |
HDAから書き出される出力ファイルの数を指定します。 |
|
string |
ObjectレベルのHDAをクックする時、ここには、書き出す出力ファイル(s)のソースとなるSOPの名前を指定します。 ここを空っぽにすると、 HDA Processor ジョブは、出力に有効なノードを検索し、ジョブログで警告を出すことを試みます。 |
|
string |
書き出されるファイルを指定したパスのリスト。 |
|
string |
各出力ファイルのResultタグを指定したファイルタグのリスト。 |
|
string |
HDA Parameterのfloat値を指定したすべてのfloatアトリビュートの名前のリスト。 |
|
string |
HDA Parameterの整数値を指定したすべての整数アトリビュートの名前のリスト。 |
|
string |
HDA Parameterの文字列値を指定したすべての文字列アトリビュートの名前のリスト。 |
|
string |
HDA Parameterのボタン値を指定したすべての整数アトリビュートの名前のリスト。 Note ボタンは HDA Parameters タブ内でトグルに変換されます。 そのトグルを 有効 にするということは、 HDA Processor がクック前に そのボタンを押す ことを意味します。 |
パラメータ ¶
Generation ¶
Template Node
現行Houdiniセッション内のデジタルアセットのインスタンスを選択します。
Template Nodeのデフォルトではないパラメータ値すべてが HDA Processor のHDA Parametersに適用されます。
HDA File
クックするHDAのパスを指定します。
このパスには、絶対パスまたはHOUDINI_PATH
を基準とした相対パスを指定することができます。
例えば、myasset.hda
アセットがhou.homeHoudiniDirectory()
のotls
サブディレクトリ下にあった場合、そのHDAをotls/myasset.hda
として指定することができます。
このノードのFile Dependenciesに追加されているすべてのHDAsは、自動的に$PDG_TEMP/otls
ディレクトリにコピーされます。
HDAのクックに必須となる入れ子化されたすべてのHDAsは、ユーザのHOUDINI_PATH
で 利用不可 であればさらに File Dependency として追加する必要があります。
Add HDA Parameters
このメニューは、HDAパラメータとそれらの値がアトリビュートとしてワークアイテムに追加される方法を制御します。
ワークアイテム上のHDAパラメータアトリビュートは、ノードをクック時にそのノードのパラメータ値を設定する際に使用されます。
HDAパラメータの名前は、次の4種類の文字列アトリビュートで指定します: hdaparms_floats
, hdaparms_ints
, hdaparms_strings
, hdaparms_buttons
。
これらのアトリビュートで指定されたパラメータ名は、必ずそのパラメータと同じ名前のアトリビュートが存在していて、そのアトリビュートにそのパラメータの値が指定されている必要があります。
Automatically
このノードは、HDA Parametersタブ内のパラメータを検査して、それに必要なワークアイテムアトリビュートを自動的に追加します。
Manually
このオプションを選択した場合、必要なHDAパラメータワークアイテムアトリビュートを上流ノード上に手動で追加する必要があります。 このオプションは、HDAをプロシージャルに指定した場合にHDAが異なれば異なるパラメータをクックする必要がある時に役立ちます。
Specify Operator Using
オペレータタイプの指定方法を決めます。
First Definition in Asset
デジタルアセット内の最初の定義を使用して、オペレータを自動的に選択します。
Custom String
カスタム文字列を使用して、オペレータタイプを設定します。
Operator Type
デジタルアセットから選択するオペレータタイプの名前。 このオペレータタイプが無効または未設定だった場合、 HDA Processor は、そのデジタルアセットをクックした時に最初に見つかったオペレータタイプを取得します。
このパラメータは、 Specify Operator Using が Custom String に設定されている場合にのみ利用可能です。
Update HDA Parameters
HDA Parameters タブにリストされているパラメータを更新します。
Filter HDA Parameters
Filter HDA Parameters ウィンドウを開きます。
このノードのHDA Parametersタブに含めたいアセットのパラメータを構成することができるダイアログが開きます。 このノードの HDA Parameters タブに含められているすべてのパラメータの値は、 HDA Processor がそのHDAをクックする時に設定されます。
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のドキュメントを参照してください。
Delete HDA Instance after Cooking: #id: inprocesscleanup
Cook Type が In Process に設定されている場合、このパラメータは、ワークアイテムが作成した.hda
インスタンスをクック後にクリーンアップするかどうかを決めます。
このパラメータを有効にすると、各ワークアイテムはHDAインスタンスを作成してクック後にそのインスタンスを破棄します。
無効にすると、HDAインスタンスはクック後でも破棄されません。その上、ワークアイテムはできるだけ既存インスタンスの再利用を試みます。
Batch Mode
このノードがバッチジョブを投入する方法を決めます。
Off
バッチを実行しません。各ワークアイテムは、各自の個々のジョブとして投入されます。
All Items in One Batch
すべてのワークアイテムが単一バッチジョブとして投入され、単一Hython
セッションで実行されます。
このオプションは、例えばHython
プロセスの起動時間がHDAのクック時間よりも長い場合で、特にHDAのクックが比較的短いような場合に、このノードがクックを終了する長さを大幅に短縮することができます。
Custom Batch Size
Batch Size パラメータで指定されたサイズのバッチジョブとしてワークアイテムが投入されます。
このオプションは、色々な最適化を行なうことができるので(例えば、バッチジョブ単位で1回HDAをインスタンス化するだけで済むので)、このノードのパフォーマンスを大幅に改善することができます。
Batch Size
このパラメータは、 Batch Mode が Custom Batch Size に設定されている場合にのみ利用可能です。
各バッチのサイズを指定します。 最後のバッチがこのサイズに満たなければ、その最後のバッチのサイズは、その余ったワークアイテムのサイズになります。
Cook Batch When
このパラメータは、 Batch Mode が Off に設定 されていない 時にのみ利用可能です。
ワークアイテムのバッチをスケジュールに組むタイミングを決めます。
デフォルトでは、すべてのワークアイテムの依存関係がクックされると、バッチのスケジュールが組まれます。 しかし、最初のワークアイテムが実行できるようになったら即座にバッチのスケジュールが組まれるようにすることもできます。
All Items are Ready
バッチ内のすべてのワークアイテムのすべての依存関係が満たされた時にのみ、バッチのスケジュールが組まれます。
First Item is Ready
最初のワークアイテムの依存関係の準備が整ったら即座にバッチのスケジュールが組まれます。 PDGで使用されるHDA Processorラッパースクリプトは、ジョブが実行されるとバッチ内の各ワークアイテムをクックする前にPDGと通信をして、その依存関係の状態をチェックします。 これは、若干ネットワークのオーバーヘッドを伴い、ジョブとPDGの間で継続的な通信が必要になります。
Create File Inputs
このパラメータを有効にすると、複数のファイルノードがインスタンス化され、それらが入力としてアセットに接続されます。 これを使用することで、複数の HDA Processor ノードを簡単にチェーン接続することができます。 このオプションが有効になっている時は、HDAタイプは必ずファイル入力に対応できるようにしなければなりません(例えば、OBJレベルのHDAsは、このオプションでは動作 しなくなります )。
Input File Source
このパラメータは、 Create File Inputs が 有効 な時にのみ利用可能です。
入力ファイルのソースを決めます。
Upstream Output Files
File Tag パラメータで指定されたタグを持った上流の出力ファイルは、HDAの入力として使用されます。
このオプションは、特に入力の数が可変するような時に役立ちます。
Custom File Paths
Number of Inputs マルチパラメータを使って指定されたファイルがHDAの入力として使用されます。
Missing Input
このパラメータは、 Create File Inputs が 有効 な時にのみ利用可能です。
入力が見つからなかった場合の HDA Processor の挙動を決めます。
Raise Error
入力の File ノードで入力が見つからなければ、その File ノードがエラーを出して、クックを失敗させます。
Ignore
入力ファイルがディスクから見つからなかった場合、 File ノードが“No Geometry”に設定され、何もエラーが発生しません。
File Tag
このパラメータは、 Create File Inputs が 有効 な時にのみ利用可能です。
使用する上流の出力ファイルのファイルタグを指定します。
Number of Inputs
このパラメータは、 Input File Source が Custom File Paths の時にのみ利用可能です。
作成する入力ファイルノードの数を指定します。
Input File #
このパラメータは、 Input File Source が Custom File Paths の時にのみ利用可能です。
作成された File ノードで読み込まれる入力ファイルのパスを指定します。
HDA Type
あなたが扱っているアセットのタイプを識別します: Object, Sop, Lop, Cop2。
HDA Processor は自動的に、選択したHDAのタイプに基づいて HDA Type を設定し、そのアセットタイプで不要な Asset Output パラメータを非アクティブにします。
Write Outputs
このトグルを有効にすると、 HDA Processor はアセット内のディスプレイノードからジオメトリをディスクに出力するようになります。
アセットにCOPネットワークまたはROPネットワークが含まれていれば、このパラメータを 無効 にすると役立ちます。
Sop Path
このパラメータは、 HDA Type が Auto または Object の時にのみ利用可能です。
HDA Processor が出力するジオメトリのオペレータパスまたはSOP名を指定します。
HDAのトップレベルノードを基準に指定したオペレータパスを使用することを推奨します。
例えば、Objectレベルのアセットの中にgeometry_to_export
という名前のジオメトリノードがあった場合、且つ、そのノードのジオメトリをファイルに書き出したい場合、このSOPパスには./geometry_to_export
を指定してください。
Number of Outputs
SOPsは2つ以上の出力を持つことができるので、このパラメータを使用して、出力の数を指定します。
Output File Name #
出力ファイルの名前を指定します。
Output Tag #
結果ファイルに割り当てるResultタグを指定します。
Enable Performance Monitor Logging
有効にすると、.hda
のクックを開始した時にパフォーマンスモニタが起動され、クックが完了すると停止されます。
パフォーマンスモニタの統計情報は、 Performance File が有効かどうかに応じて、ワークアイテム出力またはディスク上のファイルにログとして書き出されます。
Performance File
有効にすると、パフォーマンスモニタデータがこのパラメータで指定されたパスに書き出されます。
Save Debug HIP File
有効にすると、このパラメータには、ディスクに書き出されるデバッグHIPファイルのファイルパスを指定します。
Report Debug File as Outputs
このパラメータを有効にすると、ワークアイテムがクックを終了した時に、 Save Debug HIP File と Performance File で指定された出力ファイルがワークアイテム出力として追加されます。
Report Nested Node Errors
このパラメータを有効にすると、エラー状態になっているすべてのノードのエラーメッセージが取得されログに書き出されます。 無効にすると、トップレベルのノードのエラーのみがログに書き出されます。
Schedulers ¶
TOP Scheduler Override
このパラメータは、このノードのTOPスケジューラを上書きします。
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 に設定されている場合にのみ利用可能です。
HDA Parameters ¶
このノードのタブセクション内のパラメータは、現行デジタルアセットのパラメータインターフェースに基づいて自動的に入力されます。 ここで設定したパラメータは、ワークアイテムアトリビュートにコピーされ、アセットがクックされた時にそのアセットに適用されます。
Files ¶
File Dependencies
このノード内の最初のワークアイテムが実行される前にPDG作業ディレクトリにコピーしておきたいファイルのリスト。 これを使用することで、デジタルアセットやカスタムスクリプトなどのサポートファイルをワークアイテムジョブで利用可能にすることができます。
指定可能なパスは、絶対パスまたはHOUDINI_PATHを基準とした相対パスです。
Examples ¶
example_top_hdaprocessor Example for HDA Processor TOP node
このサンプルでは、HDA Processor TOPノードの使い方を説明しています。
See also |