On this page | |
Since | 17.5 |
フレーム番号と選択したフレーム番号の丸めモードに基づいてワークアイテムを区分けします。 このノードを使用することで、複数のサブフレームを単一フレームに結合したり、色々なWedgeバリエーションからフレームを分けることができます。 これによって、内部的にソースジオメトリをサブフレームで読み込むシミュレーションを整数フレームを使って実行することができます。
例えば、このノードで以下の事に役立てることができます:
-
初期シミュレーションソースを半フレームステップ(0.5)でシミュレーションを書き出しても、実際のシミュレーションは単一フレームステップ(1.0)で出力されます。
-
その状況で例えば4つのWedgeバリエーションを用意すれば、バリエーション毎に1フレームステップでシミュレーションが2回実行されます。 1フレームステップ毎に各Wedgeがシミュレーションを実行すると、1フレームステップ目で8フレーム分、2フレームステップ目で8フレーム分のシミュレーションが実行されていくことになります。 このシミュレーションをレンダリングするには、両方のシミュレーション出力(フレーム単位の出力とWedge単位の出力)が必要になりますが、 同じパーティション内にすべての4つのWedgeからの1フレームステップ分の出力をすべて格納したくありません。 Wedge単位で1フレームステップ分の出力を1つのパーティションに格納したいです。
Tip
-
$HH/help/files/pdg_examples/top_partitioners
のサンプルでは、ターゲットのパーティション化、アトリビュートのマージの制御、アトリビュートによる分割といったよく使うパーティショナー機能の使い方について説明しています。 -
$HH/help/files/pdg_examples/top_multishot
と$HH/help/files/pdg_examples/top_rop
のサンプルでは、このノードを使用して、フレーム値で複数のシミュレーションまたはレンダーのワークアイテムをグループ化する方法を説明しています。
パラメータ ¶
Frame ¶
Create Partitions For
パーティションが作成されるフレームを決めます。
Individual Frames
個々のフレームでパーティションを作成します。
Distinct Frame Ranges
同じフレーム範囲のワークアイテムのブロックを単一パーティションに結合します。
Frame Sequences
入力ワークアイテム内の固有のフレームシーケンス毎にパーティションを作成します。
Frame Rounding
浮動小数点フレームのワークアイテムをパーティション化する際に、そのパーティションのフレーム番号を整数値に変換する方法を決定します。
このパラメータは、 Create Partitions For が Individual Frames に設定されている場合にのみ利用可能です。
Round Down
フレーム番号を一番小さい整数値に丸めます。例えば、1.0から1.9までの数値はフレーム番号1として扱われます。
Round Up
フレーム番号を一番大きい整数値に丸めます。例えば、1.1から2.0までの数値はフレーム番号2として扱われます。
Round Nearest
フレーム番号を一番近い整数値に丸めます。例えば、1.0から1.49までの数値はフレーム番号1として、1.5から2.0までの数値はフレーム番号2として扱われます。
Missing Frame
このノードはフレーム値を持たないワークアイテムを制御する方法を決めます。
Report Error
このノードは、入力ワークアイテムのどれかがフレームを持っていなかった場合にエラーをレポートします。
Ignore Work Item
フレームを持たないワークアイテムは無視され、パーティションに追加されません。
Add Work Item to All Partitions
フレームを持たないワークアイテムはすべてのパーティションに追加されます。
Note
このオペレーションは Split by Attribute の後に適用されます。
Use Frame for Partition Index
有効にすると、生成されるパーティションのインデックスには、そのパーティションに割り当てられているフレーム番号が設定されます。 無効にすると、それらのパーティションのインデックスは、0~生成されたパーティションの数-1の範囲で設定されます。
さらに Wedge Attribute も 有効 にして、wedgeindex
でフレームを分割したい場合、必ずしもパーティションインデックスにフレーム番号を設定できるとは限りません。
その理由は、異なるWedgeバリエーションが同じフレーム番号を使用している可能性があるからです。
この場合には、このノードは、パーティション毎に固有なインデックスを維持しますが、そのインデックスは0ではなくて最初のWedgeの最初のフレーム番号から開始します。
Missing Range Attribute
このノードがrange
アトリビュートを持たないワークアイテムの処理方法を決めます。
このパラメータは、 Create Partitions For が Frame Ranges に設定されている場合にのみ利用可能です。
Report Error
入力ワークアイテムにrange
アトリビュートが見つからない場合、このノードはパーティションの作成に失敗し、クックエラーを報告します。
Report Warning
range
アトリビュートが見つからないワークアイテムを警告で報告します。
Ignore Work Item
range
アトリビュートが見つからないワークアイテムを静かに無視します。
Add To All Partitions
range
アトリビュートが見つからないワークアイテムすべてをこのノードで作成されたすべてのパーティションに追加します。
Add To Last Partition
特別なパーティションがリストの最後に含まれ、そこにrange
アトリビュートが見つからないすべてのワークアイテムが格納されます。
Add to Unique Partition
range
アトリビュートが見つからない入力ワークアイテム毎に固有のパーティションが作成されます。
Range Attribute Name
ワークアイテムのフレーム範囲の開始/終了/ステップ値が格納されるアトリビュートの名前を決めます。 このアトリビュートは、最低2つのコンポーネントで数値タイプでなければなりません。
このパラメータは、 Create Partitions For が Frame Ranges に設定されている場合にのみ利用可能です。
Isolate Static Frames
有効にすると、単一フレームを表現したワークアイテムが個々のパーティションに格納されます。 このノードは、フレーム範囲の開始値と終了値が同じかどうかをチェックすることで、静的なフレームを検知します。
このパラメータは、 Create Partitions For が Frame Ranges に設定されている場合にのみ利用可能です。
Split by Attribute
有効にすると、ワークアイテムをパーティション化する前に、それらのワークアイテムが別々のグループに分割されます。 このパラメータには、それらのグループを決める際に使用される入力ワークアイテム上のアトリビュートの名前を指定します。
例えば、このパラメータにwedgeindex
を設定すれば、Wedgeバリエーション毎にパーティションを切ることができます。
分割アトリビュートを使用すると、以下の余分な処理が実行されます
-
このノードは、入力のワークアイテム毎に分割アトリビュートの値を検索します。
-
次に、その分割アトリビュートの値に基づいて、それらのワークアイテムをグループ化します。その分割アトリビュートの固有な値毎に1つのグループが作成されます。
-
通常のパーティション化処理をワークアイテムのグループ毎に適用します。別のグループのワークアイテムは、常に別のパーティションに入ります。 グループは、分割アトリビュート値の昇順で処理されていきます。
Missing Attribute
このノードによる分割アトリビュートが 見つからない 入力のワークアイテムの扱い方を決めます。
このパラメータは、 Split by Attribute が 有効 な時にのみ利用可能です。
Ignore Work Item
分割アトリビュートが見つからない入力のワークアイテムは、どのパーティションにも 格納されません 。
Add to Partitions with Matching Frame
分割アトリビュートが見つからない入力のワークアイテムは、そのワークアイテムと同じフレームを持つパーティションに格納されます。
Add to All Partitions
分割アトリビュートが見つからない入力のワークアイテムは、このノードで生成されたすべてのパーティションに格納されます。
Use Default Value
分割アトリビュートが見つからない入力のワークアイテムは、代わりに Default Value パラメータで指定された値を使用します。
Default Value
Missing Attribute が Use Default Value に設定されている時、このパラメータには、分割アトリビュートを持たないワークアイテムに使用する値を指定します。
Allow Partial Matches
Split by Attribute にアトリビュート名のリストが設定されている時、このパラメータは、それらのアトリビュートのどれかのみを含んだワークアイテムの処理方法を決めます。 これを有効にすると、存在しているアトリビュートに基づいてワークアイテムがパーティションに格納されます。 これを無効にすると、アトリビュートのサブセットのみを含んだワークアイテムはパーティション化ステップから除外されます。
Merge Attributes ¶
これらのパラメータは、このノードによって生成されたパーティション上に入力ワークアイテムのアトリビュートをマージする方法を制御します。
Merge Output Files
パーティション内のワークアイテムの出力ファイルをパーティション自体にマージする方法を決めます。 デフォルトでは、ワークアイテムのすべての出力ファイルは、パーティション出力ファイルリストにコピーされます。
None
出力ファイルは、パーティションにマージされません。
First File
パーティション内の最初のワークアイテムの出力ファイル(s)がパーティションにコピーされます。
Last File
パーティション内の最後のワークアイテムの出力ファイル(s)がパーティションにコピーされます。
Unique Files
すべてのワークアイテムの固有のファイルパスがパーティションにコピーされます。 このオペレーションはファイルリストのソートが必要なので、ファイルの順番が変わる可能性があります。
All Files
パーティション内のすべてのワークアイテムの出力ファイル(s)がパーティションにコピーされます。 ファイルの順番は、パーティション内のワークアイテムの順番に依存します。
Merge Operations
パーティショナー系ノードに対して実行するアトリビュートマージオペレーションの数を定義します。 このアトリビュートマージオペレーションは、パーティション内のワークアイテムのアトリビュートをパーティション自体にマージする際に使用されます。 このアトリビュートマージオペレーションは降順で実行されます。 アトリビュートにマッチさせるパターンを使った最初のオペレーションでアトリビュートがマージされます。
Apply Operation
入力のアトリビュートをパーティションにマージする際に実行するオペレーションを指定します。 各オペレーションは、 To Attributes パラメータを使用してマッチした該当するアトリビュートのサブセットにのみ適用されます。
以下のオペレーションが利用可能です:
Ignore
マッチしたアトリビュートは無視され、パーティションには適用されません。
First Value
パーティション内の1番目のワークアイテム上のマッチした各アトリビュートの値が保持され、2番目以降のワークアイテムの値は無視されます。
Last Value
パーティション内の最後のワークアイテム上のマッチした各アトリビュートの値が保持されます。
Unique Values
マッチした各アトリビュートの固有の値が配列にマージされます。重複した値は破棄されます。
Append to Array
マッチした各アトリビュートの値がそのアトリビュートの配列に追加されます。 すべてのワークアイテムのすべてのアトリビュート値が保持されます。
Minimum
マッチした各アトリビュートの最小値が保持されます。
Maximum
マッチした各アトリビュートの最大値が保持されます。
Sum
マッチした各アトリビュートの合計値がパーティションに格納されます。
Average
マッチした各アトリビュートの平均値がパーティションに格納されます。
Mode
マッチした各アトリビュートの最も頻繁な値が保持されます。
Median
マッチした各アトリビュートの中央値が保持されます。
Sorted
マッチした各アトリビュートの値がソートされた配列でマージされます。
To Attributes
Apply Operation パラメータが適用されるそれに呼応したアトリビュートを指定します。 このフィールドにアトリビュートパターン構文を使用すれば複数のアトリビュートを指定することができます。
Preserve Arrays
有効にすると、マージオペレーションは、そのマージオペレーションは、その入力の配列アトリビュートの元々の配列サイズを維持します。 マージされる配列サイズは、入力のワークアイテム内で最初に見つかった値で決まります。 無効にすると、パーティショナーは、入力の配列アトリビュートを単一の値シーケンス(単一スカラー値)に平坦化し、すべての値に対してマージオペレーションを実行します。
Advanced ¶
これらのパラメータは、パーティショナーの挙動に対してもっと細かなレベルのコントロールを備えた上級パラメータです。
Partition When
パーティション化の工程が入力のワークアイテムに対して実行される時期を決めます。
Input Items are Generated
上流のワークアイテムすべてが生成されると、それらのワークアイテムがパーティション化されます。
Input Items are Cooked
上流のワークアイテムすべてがクックされると、それらのワークアイテムがパーティション化されます。 これは、パーティション化スキームがワークアイテムの実行結果に基づいている場合に必須となります。
これによって、このパーティショナーは、複数のパーティションを作成することができる事以外はWait for Allノードと同様の挙動をします。
Partition Target(s)
ターゲットにしたいノードまたは複数のノードを決めます。 このターゲットノード内のワークアイテムは、そのターゲットノードがこのノードの直接の入力でなくても、それらのワークアイテムが生成されるとすぐにパーティション化されます。 ターゲットのワークアイテムの子ワークアイテムは、利用可能になった時にそのパーティションに追加されます。
Direct Input Nodes
パーティショナーは、直接の入力ノードのワークアイテムを使用します。これがデフォルトの挙動です。
Upstream Static Nodes
パーティショナーは、動的入力ノードをスキップし、一番近い上流の静的ノードのワークアイテムをパーティション化します。
Custom Target Node
パーティショナーは、 Custom Target Node パラメータで指定されたノードを使用します。
Custom Target Node
Partition Targets が Custom Target Node に設定されている場合、パーティションのターゲットTOPノードを指定します。 パーティションスキームは、このノードの入力ワークアイテムではなくて、このターゲットTOPノード内のワークアイテムに適用されます。 このターゲットTOPノードは、同じグラフ内でこのノードより上流になければなりません。
Ignore Failed Work Items
このトグルを有効にすると、パーティショナー系ノードは、失敗した入力ワークアイテムをスキップし、成功した上流のワークアイテムのサブセットからパーティションを作成します。 このオプションは、 Partition When が Input Items are Cooked に設定されている場合、または、パーティショナー系ノードを上流で失敗している動的ノードに接続する時にのみ意味があります。
Sort Contents By
このノード上のパーティションにアクセスした時に、そのワークアイテムをソートする順番を決定します。 これは、パーティションの出力ファイルのソート順にも影響します。
None
ソートを適用しません。パーティション内のワークアイテムは順不同で制御されます。
Work Item Index
パーティション内のワークアイテムをインデックス順でソートします。
Input Node Order
パーティション内のワークアイテムをこのノードに接続に接続された入力ノードの順でソートします。 2個のワークアイテムが同じ入力から来ている場合、それらのワークアイテムはインデックス順でソートされます。
Attribute
パーティション内のワークアイテムを Sort Attribute パラメータで指定されたアトリビュートに基づいてソートします。
Sort Direction
このノードのパーティション内のワークアイテムを昇順または降順でソートするかどうかを決定します。
Sort Attribute
ソートに使用するアトリビュートの名前を指定します。
このパラメータは、 Sort Contents By が Attribute に設定されている場合にのみ利用可能です。
Store Items to Attrib
これを有効にすると、パーティション内のワークアイテムに呼応したIDのリストが、指定したアトリビュートに書き出されます。 ワークアイテムのIDは整数配列として格納されます。 これによって、パーティショナーノードの下流のパーティション化されたワークアイテムのリストを戻すことが簡単になります。
Examples ¶
PartitionByFrame Example for Partition by Frame TOP node
このサンプルでは、Partition by Frame TOPを使用して、同じフレーム値を持つワークアイテムを待機する方法を説明しています。
See also |