
WebGPU を活用したパーティクルシミュレーションを GUI からも操作可能! Party がおもしろい
ソースコードも公開されてます
今回ご紹介するのは Party というパーティクルシミュレーションエンジンです。
GitHub でプロジェクト一式がオープンソースになっています。
先に「パーティクルシミュレーションエンジン」と書いてしまいましたが、正確にはパーティクルシステムであり、物理シミュレーションが可能なエンジン、という感じなのかなと思います。
リンク:
Party - Particle system and physics engine
GUI の完成度も高い
今回のサイトは、GitHub で公開されているエンジンを体験できるデモであり、また同エンジンを使った動作する CG を体験できるサイトでもあります。
まずサイトに訪れると、背景が白一色に塗られた状態のうえに、黒い点で描かれるパーティクルが一斉に解き放たれて動き出します。
パーティクルには若干の残像のような効果があるように見えるので、直前のフレームを保持しておいて合成するモーションブラーのような効果を掛けているのかもしれません。

スクリーンショットではちょっと見えにくいと思いますが、画面の下のほうをよく見ると、よくカルーセル的なインターフェースに見られるようなドットが並んでいます。
このドットはそれぞれパーティクルがどのように振る舞うかのパターンを表しており、ドットの部分をクリックしてやることでパーティクルの挙動が変わります。
それぞれに見た目が全然違うので、これを眺めているだけでも普通に楽しいですね。

また、画面の中央には Play と書かれた黒いボタンがあります。
このボタン、クリックした瞬間に GUI が立ち上がってくるようになっており、豊富なパラメータを操作して自由にパーティクルを編集できるようになっています。
正直に書くと、この GUI のほうはあまり深く使い込むことができていなくて詳しく説明することは難しいのですが、比較的シンプルな単語でわかりやすく組み立てられているので操作はそこまで難しくないと思います。
重力をシミュレーションしてみたりするだけでもめちゃくちゃ楽しいです。

ページを開いた直後、自動的に「白い背景の上でパーティクルが動く」様子を見ることができ、さらにボタンを押すことで「GUI 付きのツールが起動する」というおもしろい構成です。
白い背景の状態では、マウスでパーティクルに干渉することができるようになっていますし、さまざまなパターンで自律するパーティクルにはなにか有機的なものを感じますね。
GUI の部分もいろいろ楽しめる余地がありますし、こういう系が好きなひとなら時間が溶けるかもしれません。
ぜひチェックしてみてください。