Houdini 20.0 流体

キャッシュ化とプレビュー

On this page

キャッシュ化の基本

流体をシミュレーションして、その結果を一時的にコンピュータのメモリに格納することができます。 負荷が高いシミュレーションだと、このワークフローではメモリが足りなくなって問題が発生する可能性があります。 また、プロジェクトを閉じるとその結果が失なわれるため、シミュレーションをやり直さなくてはなりません。 シミュレーションデータを永続的に保存したいのであれば、ディスクに書き込むと良いでしょう。 この工程のことをキャッシュ化と呼びます。 Particle SeparationVoxel Scale 、ドメインサイズなどの係数次第では、FLIP流体データが膨大な量になる可能性があります。 Houdiniには、そのデータを圧縮してディスク容量を節約するFluid Compress SOPノードが用意されています。 この圧縮は不可逆圧縮(ロッシー圧縮)なので、品質が損なわれることに注意してください。 しかしながら、Particle Fluid Surface SOPなどのSOPは、圧縮された流体入力を検出して、必要な欠落データをすべて再生成できるように設計されています。

  1. Fluid Compressノードをネットワークに追加します。そのノードには Particles and VolumesContainerCollisions の3つの入力があります。それら3つの入力はFLIP Solver SOPの出力と一致しますが、通常は1番目の入力のみを使用して流体データを圧縮します。

  2. Fluid Compressノードの1番目の入力をソルバの1番目の出力に接続します。

  3. Particle Separation パラメータは、FLIP Container SOPノードのそれに呼応するパラメータと合わせてください。

  4. カスタムのアトリビュート-フィールドペアを設定した場合は、それらを Keep Attributes に追加します。

これで、データをキャッシュ化することができます。 Houdini19.5では、すべてのキャッシュ系ノードが合理化され、どれも同じ基本機能とレイアウトを備えています。たいていの場合、デフォルト設定で処理を進めることができます。

Note

流体データだけでなく、 ContainerCollisions の情報もキャッシュ化したい場合は、データストリーム毎に1個のFile Cache SOPが必要です。

  1. File Cacheを追加して、それをFluid Compressノードの1番目の出力に接続します。

  2. Base Name には2つのトークンが含まれています:

    • $HIPNAMEはHoudiniプロジェクトの名前です。

    • $OSはノード自身の名前(filecache1など)を表します。

  3. Base Folder のエントリをそのままにしている場合、プロジェクトディレクトリのgeo下にキャッシュファイルが見つかります。

  4. データを保存するには、 Save to Disk (UIがロックされます)または Save to Disk in Background (UIの応答性は維持されます)をクリックします。

  5. シミュレーションを中断するには、 Cancel Cook を押します。シミュレーションの複雑さによっては、クックが止まるまで少し時間がかかる場合があります。

Note

File Cacheに、シミュレーションデータをロードできない旨の警告が表示される場合があります。 Save to Disk (in Background) を押すと、 Load from Disk オプションが自動的にオンになります。 ノードは1番目のキャッシュファイルをロードしようとしますが、シミュレーションをキャッシュ化するのが初めてであれば、このファイルは存在しません。

複数のシミュレーションのキャッシュ化

シミュレーションでは、できるだけ物量を分けるように心がけてください。 これは、流体パーティクル、サーフェスメッシュ、Whitewaterを含んだ複雑なシミュレーションのキャッシュ化にも有効です。 キャッシュを別々に分けることで、あなたのプロジェクトの部分で個々に作業ができるようになります。 これをするには、ネットワークにFile Cache SOPを何個も追加して接続します。 次に、1番目のシミュレーションをキャッシュ化します。 次に、ディスクから前のデータを読み込んで、2番目のシミュレーションを実行します。 再度、File Cache SOPでそのすべてをディスクに書き出します。 次に、そのデータをリロードしてシミュレーションを実行します。 これを繰り返します。 結果として、すべてのシミュレーションデータが別々に保存されます。 こうすることで、例えば、1つのパーティクルキャッシュから複数バージョンのサーフェスメッシュやWhitewaterを生成することができます。

キャッシュが複数ある場合でも、大元のパーティクルシミュレーションを圧縮してディスク容量を節約することができます。 サーフェス化とWhitewaterのシステムには、圧縮されたキャッシュから元のデータを復元するための仕組みが組み込まれています。

プレビュー

ビューポートの左下には、縦に並んだ2つのアイコンがあります。

  1. UIの左下コーナーにあるアイコンをクリックして、 Render Flipbook 設定を開きます。

  2. デフォルト設定のままにして、 Start をクリックし、画像シーケンスを記録します。

  3. 準備ができたら、プレビューウィンドウの File… をクリックしてから、 Save Sequence As… をクリックします。

  4. 新しいダイアログが表示されるので、そこでファイル名、ディレクトリ、品質を指定します。

See also

流体

初心者向け

パーティクル流体(SOP)

粘度のある流体(SOP)

最適化(SOP)

FLIP構成ツール(SOP)

パーティクル流体(DOP)

粘度のある流体(DOP)

オーシャン(DOP)

最適化

  • 流体の圧縮

  • 流体シミュレーションの分散

    Distributeシェルフツールは、HQueueを使用して複数マシンのファーム上で並列処理ができるように、オブジェクトのシミュレーションネットワークをセットアップします。