On this page | |
Since | 17.5 |
概要 ¶
Wedge ROPは、可能な範囲で色々な設定を使って複数バージョンの画像またはジオメトリを生成することができるので、それらから最良のルックを選ぶのに役立ちます。
TOPsでは、アトリビュートとして格納された色々な設定を使ってバリエーション別に異なるワークアイテムを生成すれば同じようなことができます。
Wedge TOPは、そのようなワークアイテムを生成します。これは、一度に複数のアトリビュートのバリエーションを生成することができます。 特定の範囲内で設定を変えたり、値のリストから選択したり、ランダムに値を取得することができます。
How to ¶
-
レンダーノード(s)の 前 にWedgeノードを追加します。
レンダー系TOPノードは 入力のワークアイテム毎に フレーム単位でワークアイテムを生成するので、Wedgeノード以降のレンダー系ノードは、バリエーション別にフレーム毎にレンダーアイテムを生成します。
-
Wedge TOPの Wedge Attributes マルチパラメータを使って、色々と変えたいアトリビュート(s)をセットアップします。例えば、レンダー系ノードのアトリビュートのリファレンスにあるアトリビュートを使用することで、TOPネットワークまたはそこでコールされたHDA内でレンダー設定を変えることができます。
-
Wedge attributes の隣にある Addボタンをクリックすると、新しいWedge変数が追加されます。
-
新しいWedge変数の Attribute Name を設定します。
Pull vs. Push ¶
Wedgeアトリビュート毎に、以下の2つの方法のどちらかで、そのアトリビュートを使ってレンダー系ノードのパラメータを設定することができます:
-
レンダー系ノード上またはそのレンダーがクックする他のノード上のパラメータエクスプレッションに
@attribute
参照を使用することで、ワークアイテムからアトリビュート値を“pull(引き出す)”することができます。Pull参照は非常に便利で柔軟性があります。しかし、これにはTOPs固有のエクスプレッションを使用する必要があるので、さらにROPノードを手動またはTOPs不要で利用できるようにしたい場合には都合が悪いです。
または
-
Wedge TOP上で、シーン内のノードパラメータを明示的に指定することで、レンダリング時にそのパラメータにアトリビュート値を“push(格納)”することができます。これは、レンダーノードがレンダリング時に特定のノードパラメータを上書きするのに使用できる特別なアトリビュートを生成します。
これは、ノードパラメータ内にTOPs固有のエクスプレッションを使用することなくシーン内の値をWedgeすることができるので、レンダーノードは手動またはTOPs不要でレンダリングすることができます。
Target Parameter を有効にします。Target Parameterフィールドの横にある選択アイコンをクリックすると、上書きしたいパラメータをインタラクティブに選択することができます。 Wedge TOPは、レンダーTOPsにレンダリング時にオーバーライドを使用するように伝える特別なアトリビュートを生成するので、HIPファイル自体は影響を受けません。
Pushアトリビュートの一覧とそれに伴う妥協点に関しては、 Overwrite Target Parm on Item Selection パラメータのヘルプを参照してください。
TOP Attributes ¶
Wedge Attributes パラメータによって生成されるアトリビュートに加えて、以下の共通アトリビュートがWedgeワークアイテムに追加されます:
|
int or [int] |
このノードが生成するWedge数で、 Wedge Count パラメータの値と同じです。 このノードが他のノードに接続されていて、 Wedge Count パラメータのエクスプレッションがワークアイテムアトリビュートで駆動されている場合、上流の依存関係が異なるワークアイテムでは、このアトリビュートの値は異なります。 Preserve Wedge Numbersを有効にすると、 |
|
int |
ワークアイテム上のWedgeバリエーションを識別するインデックス。 これは、Wedgeノード内で固有です。 |
|
int or [int] |
Wedgeバリエーション番号。このバリエーション番号の範囲は0から Wedge Count -1です。
Wedgeノードに何も入力がなければ、この番号は Preserve Wedge Numbersを有効にすると、 |
|
int |
ワークアイテム生成ステップ時にこのノードが生成するワークアイテムの総数。
このノードが動的で入力ノードを持っている場合、 |
|
[str] |
このノードでWedgeされるアトリビュート名のリスト。 |
|
str |
Target Parameter を有効にしてアトリビュートをROPパラメータに“Push”するように選択した場合、このノードは |
|
int |
Target Parameter を有効にしてアトリビュートをROPパラメータに“プッシュ”するように選択した場合、このノードは このアトリビュートは、 Wedge Type が String に設定されている時にのみ設定されます。 それ以外のすべてのWedge Typeに関しては、どの場合でも Target Parameter にはアトリビュート参照が設定されます。 |
パラメータ ¶
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 が設定されます。
Work Item Order
生成されるワークアイテムの順番。
“Group by Input”を選択した場合、同じ入力ワークアイテムに依存しているワークアイテムは、このWedgeノード内で互いに隣り合いになります。
それ以外の場合、同じwedgenum
を持つワークアイテムが、このWedgeノード内で互いに隣り合いになります。
Wedge Count
作成するワークアイテムの総数。 Wedge Type が Range に設定されたアトリビュートは、この数に分割されます。 Value List に設定されたアトリビュートは、値の数よりWedgeの数の方が多い場合には周回するようになります。
作成するワークアイテムの数。 各ワークアイテムには、 Wedge Attributes パラメータからのすべてのアトリビュートが入ります。 このノードが他のノードに接続されている場合、上流のワークアイテム毎に、これだけの数のワークアイテムが生成されます。
Random Seed
この数値を変更すると、このノードは異なる乱数値を生成します。
Preserve Wedge Numbers
有効にすると、wedgenum
とwedgecount
のアトリビュートには、入れ子化されたWedgeのレベル毎のWedge番号のリストが入ります。
1番目のレベルのWedgeのwedgenum
値は配列のインデックス0番に格納されます。2番目のレベルのWedgeならインデックス1番です。
同様に、wedgecount
値は各レベルでのWedgeバリエーション数に相当します。
このトグルを無効にすると、直近のWedge番号とWedgeバリエーション数のみが格納されます。
Export To Environment
ワークアイテムのジョブ環境毎に、バリエーションアトリビュートを環境変数にコピーします。
Overwrite Target Parameter on Work Item Selection
変数に対して Target Parameter チェックボックスを有効にして、その変数をROPパラメータに“Push”する場合には、 これを有効にすることで、ネットワークエディタ内のワークアイテムを選択する度にそのPushを実行することができます。 これによって、“Pull”参照と使用するのと同じように効果を確認することができます。 しかし、この挙動は実際にはその Target Parameter の値を変更しているわけなので、再クックされて、HIPファイルが未保存としてマークされ、HIPファイルを保存すると、その“プレビュー”の変更が保存されます。 その Target Parameter の現行値は、そのパラメータが選択された時にWedge TOPに保存され、ワークアイテムの選択が解除されると元に戻ります。 Capture と Restore のボタンを使用することで、手動で値をキャプチャしたり元に戻すことができます。
このパラメータは、アクティブなHoudiniセッションにのみ影響することに注意してください。 実際にネットワークを実行すると、そのネットワークは、現在のHIPファイルに影響を与えずに“Push”された値を使ってROPをコールします。
Wedge Attributes
Wedgeさせるアトリビュートの数を設定します。
Wedge Count Attribute Name
Wedgeの合計数が格納されるアトリビュートの名前。
Wedge Index Attribute Name
Wedgeの完全なリスト内のWedgeワークアイテムのインデックスが格納されるアトリビュートの名前。
Wedge Num Attribute Name
このノードによって生成されたWedge内のWedgeワークアイテムのインデックスが格納されるアトリビュートの名前。
このWedgeノードに何も入力がない場合、この値はwedgeindex
アトリビュートと同じです。
しかし、複数のノードを使って入れ子化されたWedgeを生成した場合、このノードは上流のワークアイテム毎に Wedge Count 個のワークアイテムを生成するので、同じwedgenum
を持つワークアイテムが複数存在することになります。
Wedge Total Attribute Name
すべての入れ子化されたWedgeノードで生成されたWedgeの合計数が格納されるアトリビュートの名前。
Attribute Name
Wedgeさせるアトリビュートの名前。
Target Parameter
これを有効にすると、アトリビュートがターゲットパラメータに“Push”されるようになります。 このフィールドの右側にある選択アイコンをクリックすると、上書きしたいノードとパラメータをインタラクティブに選択することができます。 Overwrite Target Parameter on Work Item Selection を有効にすると、 Captured Value フィールドには、このパラメータのオリジナルの値が格納されます。 キャプチャした値は Capture ボタンを使って再取得することができ、 Restore ボタンを使って元に戻すことができます。
Attribute Type
アトリビュートデータのタイプ: “Float”, “Float Vector”, “Integer”, “Integer Vector”, “String”, “Color”(2個から4個までのベクトルサイズに関してはFloat/Integer Vectorを使用します)。
Set Value As
Attribute Type が String に設定、且つ、Wedgeの Target Parameter が有効になっている時、 このパラメータは Target Parameter の設定方法を決めます。 これを使用することで、 Target Parameter にエクスプレッション、定数、PDGワークアイテムアトリビュートの参照を設定することができます。
Attribute Reference
Target Parameter には、ワークアイテムアトリビュートを参照するエクスプレッションが設定されます。
例えば、アトリビュート名が“scale”の場合、 Target Parameter には@scale
エクスプレッションが設定されます。
Parm Value
ターゲットパラメータ値が明示的にWedge値に設定されます。
Parm Expression
ターゲットパラメータエクスプレッションが明示的にWedge値に設定されます。
Wedge Type
Wedgeされた値を生成する方法。
Range
Start 値から End 値までの範囲で均等に値を分布させます。 Random Samples を有効にすると、このノードは、この範囲内で均等に値を分布させるのではなくランダムに値を選択します。
Value
下にある Value パラメータの値をアトリビュートに設定します。 ここには、定数値、または、ノードがワークアイテム毎に別々に評価できるようにエクスプレッションを指定することができます。
Tip
エクスプレッションでは、wedgecount
パラメータをチャンネル参照することでWedgeの総数を取得することができ、@wedgeindex
を使用することで現行ワークアイテムのインデックスを取得することができます。
例えば、以下のエクスプレッションはサイン波の形状で値を生成することができます:
sin(@wedgeindex / (ch("wedgecount") - 1) * 180 + 90)
Value List
下にある Values マルチパラメータで指定した値を周回させます。 Random Samples を有効にすると、このノードは、そのリストをループさせるのではなくてランダムに値を選択します。
Bracket
中央値とオフセットで指定された範囲の値を分布します。
この中央値がワークアイテムのどれかに必ず含まれるようにするには、奇数個の Wedge Count が必要です。
Random Samples を有効にすると、このノードは、それらの値を均等に分布させるのではなくて、ランダムに値を選択します。
最初のwedge_count/2
個の値は、[center-offset, center]
の範囲から選択され、残りの値は、その反対側の範囲から選択されます。
Random Samples
Wedge Type が“Range”、“Value List”、“Bracket”のどれかの時に、そこからランダムに値を生成します。
Examples ¶
WedgeGeometry Example for Wedge TOP node
このサンプルでは、ROP Geometry Output TOPと併せてWedge TOPを使用して、SOPネットワークのバリエーションを作成する方法を説明しています。
See also |