| On this page | |
| Since | 18.5 |
概要 ¶
これは、パラメータで指定されたウェイトのリストを使用して、1番目の入力のソースPrimsのトランスフォームと2番目の入力のターゲットPrimsのトランスフォームをブレンドします。
このノードは、Constraint Blend CHOPと同じ様に動作しますが、連続する各ブレンドは、同じターゲットPrimのトランスフォームを再利用するので、可変量でトランスフォームの個々のコンポーネントをブレンドすることができます。
Solarisの拘束 ¶
現在のところ、USDは拘束に対応していません。 パラメータ拘束は、説明的、不変、常に同じ結果を返すというUSDの設計思想におそらく反します。
USDを生成するUSD上のレイヤとして、LOPネットワークは動的拘束を計算して、そのUSDをディスクに書き出す度にそのタイムサンプルでその結果を“ベイク”することができます。
Tipsとメモ ¶
-
入れ子化された ポイントインスタンスは、ソースとして使用することはできず、 ターゲット としてのみ使用することができます。
-
複数のソースPrimsを指定すると、このノードは、各ソースのトランスフォームをターゲットのリスト内の同じインデックスでのそれに呼応するターゲットPrimとブレンドします。
ソースPrimsより少ない数のターゲットPrimsを指定した場合、このノードは、呼応するターゲットPrimがないソースPrimsを最後のターゲットPrimとブレンドします。
例えば、
/cube1 /cube2 /cube3の3個のソースPrimsを指定し、/sphere1の1個のターゲットPrimを指定した場合、このノードは、それら3個のcubeのトランスフォームすべてをsphereのトランスフォームとブレンドします。/cube1 /cube2 /cube3の3個のソースPrimsを指定し、/sphere1 /sphere2の2個のターゲットPrimsを指定した場合、このノードは、cube1をsphere1とブレンドし、cube2とcube3をsphere2とブレンドします。
パラメータ ¶
Sampling Behavior
このノードがクックされると、現行時間にただ1個のUSDタイムサンプルを生成するのではなく、たくさんのUSDタイムサンプルを生成することができます。
これは、このノードの後にCache LOPを接続することと同様ですが、こちらの方が非常に高速に評価され、他のノードからのデータをキャッシュ化しません。
これによって、以降のすべてのノードも時間依存にしてしまうノード時間依存を導入することなく、アニメーションデータをUSDで作成することができます。
その結果、一部のLOPネットワークの再生パフォーマンスを大幅に向上させることができます。
どのサンプリングモードでも、このノードのパラメータが時間と共に可変しない、且つ、ステージ上の他のタイムサンプルデータに依存していない場合、 呼応するアトリビュートに対して単一デフォルト値のみがUSD内で生成されます。 時間と共に可変するパラメータに対してのみUSDタイムサンプルが生成されます。
Sample Current Frame
現行時間に対して単一タイムサンプルが作成されます。
Sample Frame Range If Input Is Not Time Dependent
このノードの入力が時間依存の場合、このノードは、 Sample Current Frame モードと同様の挙動をします。 そうでない場合、このノードは、 Sample Frame Range モードと同様の挙動をします。
Sample Frame Range
Start/End/Inc パラメータを使用して、このノードのパラメータが評価される時間に対して複数の時間を生成し、それらの各時間においてアトリビュート毎にUSDタイムサンプルが作成されます。
Start/End/Inc
Sampling Behavior が Sample Frame Range の場合、このパラメータは、このノードで生成されるベースタイムサンプルの数と間隔を制御します。
このパラメータのデフォルト値は、@fstart、@fend、@fincです。
これらの値は、Houdiniを操作する時のグローバルHoudiniアニメーション設定の開始フレーム、終了フレーム、ステップサイズに相当します。
ROPノードを使用してフレーム範囲を生成した場合、これらの値は、実行したそのROPノードで指定された開始フレーム、終了フレーム、ステップサイズに相当します。
このデフォルトは、ディスクに書き出されるUSDファイルに、(Houdiniアニメーション設定に関係なく)ROPで指定されたフレーム範囲ちょうどのタイムサンプルを含めます。
Subframe Sampling
このノードで生成されたプライマリサンプル毎に、これらのパラメータは、そのプライマリサンプル時間付近に追加でサンプルを生成させることができます。 これは、プライマリサンプル時間だけでなく、カメラシャッターの開閉時間ちょうどにも正確なデータが存在することを保証するために非常によく使用します。
Shutter
プライマリサンプル時間を基準にシャッターの開閉時間を指定するのに使用されるメソッドを制御します。
Specify Manually
Shutter Open/Close パラメータの値で、プライマリサンプル時間を基準とした正確なオフセット値を指定します。
Use Camera Prim
Camera Prim パラメータで、シャッターの開閉時間が抽出されるカメラPrimのシーングラフパスを指定することで、プライマリサンプル時間を基準としたオフセット値を指定します。
Shutter Open/Close
Shutter モードが Specify Manually の場合、ここの2つのオフセット値がプライマリサンプル時間に追加され、シャッターの開閉時間が指定されます。 シャッターの開時間は0以下に、閉時間は0以上に設定してください。
Camera Prim
Shutter モードが Use Camera Prim の場合、ここには、入力ノードのステージ上のカメラPrimのシーングラフパスを指定します。 このPrimからShutter Open/Closeのアトリビュート値が読み込まれます。
Samples
プライマリサンプル毎に作成するサブフレームサンプルの数。 これらのサンプルは、シャッターの開時間から閉時間の間で均等に分布します。 このような均等な分布は、ちょうどプライマリサンプル時間にサンプルが作成される場合と作成されない場合があることに注意してください。
Always Include Frame Sample
有効にすると、ちょうどプライマリサンプル時間にサンプルを作成させることができます。 シャッター開時間とシャッター閉時間のどちらの Samples 値も既にプライマリサンプル時間でサンプルが配置されている場合、このオプションを有効にしても何の効果もありません。 そうでない場合、このオプションによって、追加でサンプルが作成されます。 つまり、プライマリサンプルあたりの実際のサンプル数は、 Samples で指定されたサンプル数よりも多くなる可能性があります。
Type
ソースPrimsが通常の Primitives または Point Instancer のどちらなのかを指定します。 このノードは、 入れ子化された ポイントインスタンスをソースとして使用することはできません。
Source
Source Type が Primitive の時に使用するPrimのシーングラフパス。
Source Instances
Source Type が Point Intance の時に使用するポイントインスタンスを/‹path›[‹instance_index›]構文で指定します(例えば、/geometry/instancer[1])。
Type
ブレンドターゲットがソースと同じ、または、通常のPrimsまたはポイントインスタンスのどちらなのかを指定します。
入れ子化されたポイントインスタンスを ターゲット として使用することが できます 。
Target
Target Type が Primitive の時に使用するPrimのシーングラフパス。
Target Instance
Target Type が Point Intance の時に使用するポイントインスタンスを/‹path›[‹instance_index›]構文で指定します(例えば、/geometry/instancer[1])。
Import Time
ソース/ターゲットのジオメトリを埋め込みSOPネットワーク内に取り込んで拘束を構築する際のフレームを指定します。
デフォルトの$FFエクスプレッションは、ソースまたはターゲットのPrimsを駆動させるタイムサンプルを持った時間依存ではないネットワーク上で拘束LOPを動作させるため、その拘束LOPを強制的に時間依存にします。
しかし、タイムサンプルを持たない時間依存ではないネットワークでパフォーマンスを良くするには、代わりに静的な値を使用することを推奨します。
Method
トランスフォームをブレンドする方法。
Proportional
各ブレンドソースは、そのブレンドウェイトに応じて結果に寄与します。 ブレンドウェイトの合計が1にならない場合は、そうなるように正規化されます。
Difference
1番目のPrimが“ベース”となります。
1番目のPrimに関連付けられているブレンドウェイトは無視されます。
それ以外のブレンドウェイトに関しては、ブレンドウェイトが0ならば、その結果はベースになります。
他のすべての入力のブレンドチャンネルが用意され、どのブレンドチャンネルもすべてゼロの場合は、その出力はベースになります。
どれか1つの入力のブレンドウェイトが1で、その他がゼロの場合は、その入力が出力になります。
Difference メソッドの利点は、各ブレンド入力が他のブレンド入力の影響を下げることなく結果に影響を与えることです。 各入力のブレンドウェイトを1より大きく設定することで、その入力を誇張させることができます。 他にもマイナス値を使用することができます。 すべてのブレンドウェイトがゼロの場合、ブレンドされるチャンネルのどれかがゼロから緩くなるので滑らかな遷移が得られます。
Rotation Blending
回転チャンネルはオイラー角として扱うと通常では上手くブレンドされず、まっすぐな線形ブレンドでは反転とおかしな回転が発生する可能性があります。 代わりに、最短経路ブレンドを使用すれば、オイラー回転角度で表現された向きを適切にブレンドすることができます。
Euler
回転チャンネルを他のチャンネルと同様にブレンドします。
Shortest Path (Linear)
最短経路回転ブレンドを使用して2本の入力をブレンドします。 3本以上のブレンド入力を接続する場合は、 Shortest Path (Fast Linear) を使用してください。
Shortest Path (Fast Linear)
最短経路回転ブレンドを使用して複数の入力をブレンドします。
Blends
ここには、上記で選択されたPrimsに設定したいブレンドウェイトの数値を設定します。
Blend
ブレンドする時にこのトランスフォームに与えるウェイト。 Method が Difference の場合は、この値の解釈は異なります。
Mask
各ブレンドに対して、ブレンドしたいコンポーネント(TX,TY,TZ,RX,RY,RZ,SX,SY,SZ)を選択します。
| See also |