Since | 19.5 |
このノードの出力は、個々のクックの度に編集されたタイムサンプルを結合した結果を保持した単一ステージです。 これは、クックを排除して、ビューポートに送信される更新を最小限に抑えることで、再生を高速化します。
このノードは、LOPネットワークで編集されたトランスフォームデータに対してビューポートでモーションブラーを有効にするのにも役立ちます。
時間依存の入力ノードを使ったCache LOPは、フレーム範囲全体がクックされていれば、時間依存を排除することができます。
USD Primsが時間の経過と共に追加または削除された場合、そのCache LOPの出力はキャッシュ化したフレーム範囲で作成されたすべてのUSD Primsの集合体になります。 この挙動はUSD ROPと同じで、どちらのノードもUSDのビルトインのレイヤーステッチ機能を使ってタイムサンプルを結合します。
パラメータ ¶
Cache Behavior
フレームをキャッシュに結合するタイミングと方法を指定します。
Always Cache All Frames
このノードが初回にクックされた時、または、Cache LOPの入力が変更される度にすぐに、このノードはフレーム範囲全体をクックして、その結果を単一ステージに結合します。
これは、計算時間もメモリ使用量も非常に負荷がかかりますが、フレーム範囲全体をキャッシュ化する場合、この方法だと、フレームあたりの平均キャッシュ化時間が一番短く済みます。
Cache Cooked Frames
特定のフレームが要求されると、そのフレームのデータがクックされ、キャッシュに結合されます。
これは、一度に複数フレームをクックするよりもフレームあたりの処理負荷が大きいですが、最初の結果を得るまでの時間は一番短く済みます。
Cache Up To Cooked Frames
これは、 Always Cache All Frames と Cache Cooked Frames のハイブリッドです。 特定のフレームのデータが要求されると、このLOPは、フレーム範囲の開始フレームから要求されたフレームまでの全フレームをクックしてキャッシュ化します。
このオプションは、クックされるデータが、前のフレームに戻ってクックするのに非常に負荷が高いシミュレーションのデータである時に役立ちます。
Cache Current Frame Only
このモードでは、現行フレームのみがキャッシュに保存されます。 これは、タイムラインをスクラブさせた時のメモリ使用量を大幅に削減しますが、 このノードからあるフレームのデータが要求される度に、タイムサンプルを再クックしなければなりません。
通常では、このモードは、モーションブラーをかけるためにSubframe Sampling
を有効にした場合にのみ使用します。
このモードでは、シミュレーション全体を再生した後でも、Cacheノードは常に時間依存になります。
Start/End/Inc
キャッシュが収集される入力からの各クック要求間の開始フレーム、終了フレーム、増分サイズ(単位はフレーム)。 最初の2つの値は、キャッシュ化されるフレーム範囲を制御し、3番目の値では、ステージをもっと多くサンプリングさせてモーションブラーを改善したり、もっと少なくサンプリングしてメモリを節約することができます(これは精度を犠牲にしますが、USDはタイムサンプル値で単に線形補間を使用しています)。
Track Primitive Existence to Set Visibility
LOPネットワークは、フレームが変わると盛大に異なったシーングラフを生成する場合があります。 フレーム範囲内でそのようなシーングラフを1本のアニメーションシーングラフに結合すると、その結合したシーングラフ内の一連のPrimsは、各フレームの階層内のPrimsの和集合となります。 しかし、メッシュをフレーム50で出現させる場合、一般的には、このメッシュはフレーム50手前までは不可視にすることが望ましいです。 このオプションを有効にすると、このノードは、フレーム毎にすべてのPrimsのリストを追跡し、時間の経過と共にシーングラフに追加または削除されるPrimsに対してアニメーションするvisibilityアトリビュートを自動的に作成します。 これによって、時間の経過と共にPrimsが追加/削除される感じにすることができます。
UsdGeomImageable
サブクラスのPrimsがvisibilityアトリビュートを評価する唯一のUSD Primタイプなので、それらのPrimsのみがこの方法で追跡されます。
Cache Cooked Frames
モードではvisibilityを正しく動作させるためにすべてのフレームをクックする必要があるので、このオプションを有効にすることができません。
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
入力ノードのステージ上のカメラPrimのシーングラフパス。 このPrimからShutter Open/Closeのアトリビュート値が読み込まれます。
Samples
プライマリサンプル毎に作成するサブフレームサンプルの数。 これらのサンプルは、シャッターの開時間から閉時間の間で均等に分布します。 このような均等な分布は、ちょうどプライマリサンプル時間にサンプルが作成される場合と作成されない場合があることに注意してください。
Always Include Frame Sample
このオプションを有効にすると、ちょうどプライマリサンプル時間にサンプルを作成させることができます。 シャッター開時間とシャッター閉時間のどちらの Samples 値も既にプライマリサンプル時間でサンプルが配置されている場合、このオプションを有効にしても何の効果もありません。 そうでない場合、このオプションによって、追加でサンプルが作成されます。 つまり、プライマリサンプルあたりの実際のサンプル数は、 Samples で指定されたサンプル数よりも多くなる可能性があります。