Stable Fluids
Jos Stamにより1999年に提案された数値的に破綻しにくい流体シミュレーション手法
物理的な厳密性よりも計算の安定性と視覚的な自然さを重視し、リアルタイム用途で使われることが多い
特徴
長所
移流・粘性・非圧縮条件の処理が安定側に設計されており、インタラクティブ環境でも挙動が破綻しにくい。
時間刻みを大きくしても数値発散しにくい。
短所
数値拡散により渦や細部が失われやすい。
エネルギー保存性の問題があるなど、物理的な精度は高くない。
基本的な構成要素
次の順序を毎ステップ繰り返す。
1. 外力の加算(重力・入力など)
2. 移流(Semi-Lagrangian)
3. 拡散(implicit)
4. 射影(非圧縮条件の維持)
主な用途
工学的な流体解析よりも、安定で実装しやすいCG向け流体手法として位置づけられる。
ゲームやリアルタイムCGにおける煙・炎・インク表現
インタラクティブアート
教育・デモ用の流体モデル など
実装例
インクを水に落とすシミュレーション(Stable Fluids)
インクを水に落とすインタラクティブシミュレーション(Stable Fluids)
Stable Fluidsによる炎シミュレーション
参考
流体シミュレーションの基礎(Stable Fluids)
Three.js(WebGPU)で実現するStable Fluids - 2Dの流体シミュレーション - ICS MEDIA