matsuoka-601氏は1月10日(金)、WebGPUによるMLS-MPM(Moving Least Squares Material Point Method)の実装となる流体シミュレーションをGitHubデモサイトで公開した。Webブラウザ上で最大10万パーティクル規模のシミュレーションが高速動作するため、世界中から注目を集めている。

本シミュレーションはこれまでSPH法(Smoothed Particle Hydrodynamics)の実装により実現していたが、SPH法では近傍探索のコストが高く、大規模シミュレーションには限界があった。そこでmatsuoka-601氏は2018年にYuanming Hu氏らがSIGGRAPH 2018で発表した、近傍探索を必要としないMLS-MPMにより本流体シミュレーションを実装した。

Yuanming Hu氏らがSIGGRAPH 2018で発表したMLS-MPMのプレゼンテーション動画

MLS-MPMを採用することによりシミュレーションがスケーラブルになり、GeForce RTX 3060 Laptopを搭載したノートPCによるテストでは、50万パーティクルでもブラウザ上で動作したことが確認されている。
デモサイトではSmall(4万)からVery Large(20万)まで4つのパーティクル数のオプションを用意しているが、再生環境の搭載GPUによって高速動作するパーティクル数は変化する。

詳しい実装の経緯や所感はmatsuoka-601氏のブログにまとめられている。

■WebGPU で MLS-MPM を実装し,ブラウザ上で 10 万粒子規模のリアルタイムシミュレーションを実現する(matsuoka-601氏ブログ)
https://zenn.dev/sparkle/articles/3eb1225f891a87

■webgpu-ocean(デモサイト)
https://webgpu-ocean.netlify.app/

■webgpu-ocean(GitHub)
https://github.com/matsuoka-601/webgpu-ocean/

WebGPUとは

WebGPUとは、W3CのGPU for the Webコミュニティグループで開発されている、Webブラウザ向けの次世代のグラフィックスおよび計算API。従来利用されてきたWebGLを置き換える技術として策定が進められている。Direct3DやMetal、VulkanなどのGPUネイティブに近い3D APIに直接アクセスすることにより、高いパフォーマンスと効率を実現する点が特長。

■WebGPU(W3C、英語)
https://www.w3.org/TR/webgpu/

CGWORLD関連情報

●Blenderで制作したリアルな波のアニメーションが話題! 定番の流体シミュレーションアドオン「FLIP Fluids」を活用

3DCGアーティストのRyan Will氏が「Red house」と題した波のアニメーション作品を自身のXに投稿。Blenderと有料アドオン「FLIP Fluid」によるリアルなシミュレーションに注目が集まっている。
https://cgworld.jp/flashnews/202407-Blender-FLIP.html

●現実の43万倍の速度で物理シミュレーションを実行できるプラットフォーム「Genesis」登場! ロボット工学の研究開発加速、CGキャラクターへの応用にも期待

カーネギーメロン大学の研究チームがオープンソースの物理シミュレーションプラットフォーム「Genesis」を発表。Genesisは、現実の43万倍のスピードで物理シミュレーションを実行できる、Pythonベースの軽量な設計の汎用物理エンジン。ロボット工学、エンボディドAI(Embodied AI、人型ロボットのような身体性のあるロボットのAIシステム)、フィジカルAI(物理空間で知的に動作するシステム)の分野における、高速なロボットトレーニングでの活用が期待されている。
https://cgworld.jp/flashnews/202412-Genesis.html

●NVIDIA、物理AI向け“世界モデル”「Cosmos」をオープンソースで公開! Omniverseと組み合わせることでマルチバースシミュレーションが実現

NVIDIAが自動運転車やロボット開発の進化を目的にした物理AI(Physical AI、フィジカルAI)向け“世界モデル”(world foundation models、WFM)のプラットフォーム「Cosmos」を、オープンソース(NVIDIA Open Model License)でローンチ。
https://cgworld.jp/flashnews/202501-NVIDIA-Cosmos.html