シミュレーション グラフの値のキャッシング

シミュレーション グラフを作成する場合、目的の値をキャッシュするには、[キャッシング](Caching) カテゴリからノードを使用する必要があります。

キャッシングの最も基本的な形式には、値を保持するキャッシュを作成するための CreateCache ノード、値を返すための CachedValue ノード、さらに深度値をコントロールするための整数値の定数が含まれます。

CreateCache ノードの initFunc は、キャッシュの初期状態を設定する関数です。たとえば、変形モディファイヤの場合、これは通常、単なるメッシュの(MeshVertices ノードからの)頂点位置になります。

updateFunc は、値を更新するために各フレームに反復的に適用する関数です。

キャッシュの総深度は、前の値(レベル = 1)および現在の値(レベル = 0)のためのスペースを空けるために少なくとも 2 にする必要があります。総深度が 1 の場合は、評価するたびにキャッシュが更新されるのではなく初期化されることになります。必要に応じ(たとえば位置のトレールやその他のエフェクトなど)、より大きな深度を設定することができます。

状況によって、再生中に問題を防ぐために、評価時間をキャッシュする必要があります。たとえば、暗黙的な[時間](Time)パラメータを使用して、それをキャッシュされた値と比較し、その結果を使用してシミュレーションの更新方法をコントロールできます。次の例では、現在の時間がキャッシュされた時間と異なる場合のみにシミュレーションと時間キャッシュを更新するシンプルな例を示しています。