ICE 以外のリジッドボディシミュレーションのキャッシュ

 
 
 

ICE 以外のリジッドボディの現在の環境のシミュレーションをシミュレーション環境キャッシュにキャッシュできます。シミュレーションは、Animation Editor で編集可能なグローバル変換ファンクション カーブとして保存されます。ファンクション カーブはロー カーブです(つまり、各フレームごとにキーがあります)。

シミュレーション環境キャッシュを利用すると、シミュレーションをタイムラインで前後にスクラブすることができます。また、このキャッシュを利用すると、シミュレーションのバリエーションを簡単にテストできます。シミュレーションで何かを変更するたびに、それを再生するだけでキャッシュに変更が適用されます。

環境キャッシュをアクションソースに保存したり、オプションでクリップを作成して Animation Mixer で使用することもできます。後述のセクションを参照してください。1 モデルにつき 1 つのアクション ソースをキャッシュすることができます。これにより、モデルを読み込み/書き出してもキャッシュされたシミュレーションはそのままの状態になります。

注:デフォーメーションおよびトポロジ編集によっては、サイクルがリジッド ボディのシミュレーションを伴い、予測の付かない動作の原因になる場合があります。依存関係のサイクルが発生するのは、一部のジオメトリ オペレータには計算対象のリジッド ボディの位置が必要とされる一方、リジッド ボディのシミュレーションでは衝突の計算にリジッド ボディのジオメトリが必要とされるためです。解決策は、リジッド ボディまたはそのモデリングをフリーズすることです。

リジッドボディシミュレーション環境をキャッシュするには

  1. リジッド ボディ シミュレーション キャッシュの現在の環境として設定したい環境を選んでそれを右クリックし、[現在の環境として設定](Set as Current Environment)を選択します。

  2. 次のいずれかを実行します。

    • Cache Manager(「Cache Manager を開く」を参照)を開き、ウィンドウの上部の[シミュレーション](Simulation)タブをクリックします。

    • 現在のシミュレーション環境の[Simulation Time Control]プロパティ エディタを開きます (Explorer で現在の環境を開いて、[シミュレーション時間コントロール]アイコンをクリックします)。

      注:[再生 モード](Play Mode)([シミュレーション]ページ)のいずれかのオプションを選択してキャッシュすることができます。「[Simulation Time Control]プロパティエディタ」を参照してください。ただし、分散レンダリングを行う場合またはモーション ブラーを使用する場合は、[標準]モードを使用することをお勧めします。
  3. [ファイルのキャッシュ](Caching Files)タブをクリックします。

  4. [再生時にキャッシュ](Cache on Playback)オプションを選択します。

  5. キャッシュ対象となるシミュレーションのフレームを再生します。これにより、環境キャッシュ ファイルが作成され、現在の環境の[Caches]ノードに表示されます。

    また、キャッシュしたいシミュレーションの最後のフレームにジャンプして複数のフレームをキャッシュすることもできます。この場合、シミュレーションのそのフレームまでの全フレームがキャッシュされます。

  6. シミュレーションに変更を加え続け、再生のたびに環境キャッシュの中身をアップデートする必要がある場合は、[再生時にキャッシュ](Cache on Playback)オプションをオンにしておきます。

    そうでない場合は、シミュレーションの再生が終わったら、[再生時にキャッシュ](Cache on Playback)オプションをオフにしておきます。

キャッシュからアクション ソースとクリップを作成する

リジッド ボディ シミュレーションの環境キャッシュを作成したら、アクション ソースも作成してモデルとともに保持することができます。1 モデルにつき 1 つのキャッシュ ファイル ソースを作成することができます。これにより、モデルを読み込み/書き出してもキャッシュされたシミュレーションはそのままの状態になります。

アクション ソースを作成すると同時に、このソースからアクション クリップも作成し、それを Animation Mixer に適用できます。クリップを作成すると、リジッド ボディ オブジェクトからシミュレーションが削除されることに注意してください。シミュレーションを削除したくない場合は、クリップを適用する前に、このオブジェクトの複製を作成するか、またはシーンをコピーしておくことをお勧めします。

アクション クリップを Animation Mixer に適用した後は、それを他のアクション クリップと同様に使用できます。たとえば、ミキサのトラックに別のシミュレーション アクション ソースをロードして、それぞれを個別に(ソロで)再生したり、複数のシミュレーションのウェイトをミックスしたりできます。

Animation Mixer のアクションソースとクリップについては、「アクション」を参照してください。

アクション ソースのリジッド ボディ シミュレーションを保存して、クリップとして適用する

  1. [ミキサにキャッシュを保存](Save Cache to Mixer)ボタンをクリックして、[環境キャッシュをミキサに格納]ダイアログ ボックスを開きます。

  2. このダイアログ ボックスで、キャッシュされたシミュレーションが格納されているアクション ソースの[アクション名](Action Name)を入力します。このソースは、モデルの[Mixer]>[Sources]>[Animation]ノードに保存されています。ダイアログ ボックスで[OK]をクリックし、アクション ソースを作成します。

  3. 必要に応じて、[ミキサにクリップを追加](Add Clip to Mixer)オプションを選択すると、アクション ソースをアクション クリップとして、モデルの Animation Mixer に自動的に適用できます。

    このダイアログ ボックスで[OK]をクリックすると、シミュレーションがリジッド ボディ オブジェクトから削除されます。

アクション ソースのストレージ タイプを選択する

デフォルトでは、アクション ソースは内部タイプのソースとして格納されます。ただし、必要な場合はこれを変更できます。

  1. Explorer で、アクション ソースのアイコン(モデルの[Mixer]>[Sources]>[Animation]フォルダ)をクリックするか、現在の環境の[Environment Cache]アイコンをクリックして、プロパティ エディタを開きます。

  2. [Action Source]または[Environment Cache]プロパティ エディタで、キャッシュ ファイルの[ストレージ](Storage)タイプとして[内部](シーンに保存)または[外部](ファイルに保存)を選択します。

    • [ストレージ]タイプとして[内部]を選択すると、ソースは別の任意のアクション ソースとして、現在のモデルの[Mixer]>[Sources]>[Animation]フォルダに保存されます。

    • [ストレージ]タイプとして[外部]オプションのいずれかを選択した場合は、シミュレーション ソースの場所と[ファイル](File)名を選択します。これにより、別個のファイルにキャッシュされたシミュレーションを書き出すことができます。

    外部アクション ソースの詳細については、「外部アクション ソースの作成」(「Animation Mixer のノンリニア アニメーション」)を参照してください。

キャッシュ ファイルをロックする

シミュレーション環境キャッシュ ファイルを作成した後は、ロックすることにより、処理済みのキャッシュ内容を再シミュレートできないようにすることができます。こうしたキャッシュのロックは、シミュレーションの現在の状態に満足していて、変更されないようにしたい場合に有効です。

キャッシュ ファイルをレンダ ファームに送る前にロックしてください。