目次
OpenVDBMesherをレベルアップしよう
X-particlesのメッシュ生成はOpenVDBMesherで行いますが、こちらの記事(x-particles(1030) ではxpSkinnerの代わりにxpOpenVDBMesherを使う)で使い方は解説していますが、デフォルトの状態では球体が大きくて液体とは言い辛い状態になります。
このシーンのメッシュは、こんなに大きくなります。
そこで今回はOpenVDBMesherのメッシュの形を整えるfilterについてご紹介します。
OpenVDBMesher
Generalタブ
OpenVDBMasher > Generalタブ > Generalタブ
ここで生成するメッシュの細かさを設定していきます。
【Voxel Size】
生成されるメッシュの大きさ、小さい方が精度の高い表現になるがそれなりの処理能力が必要
【Point Radius】
パーティクルに対して生成するメッシュの半径
Point Radiusを小さくしました。
生成されるメッシュの大きさ、小さい方が精度の高い表現になるがそれなりの処理能力が必要
【Point Radius】
パーティクルに対して生成するメッシュの半径
Point Radiusを小さくしました。
Filtersタブ
OpenVDBMasher > Generalタブ > Filtersタブ
Use Filters にチェックを入れフィルターを有効にします。
生成されるメッシュはパーティクルに対して球状に生成されますので、その球体間の距離に応じてどのような影響を与えるのかをこのフィルターで設定していきます。
フィルタの効果
Gaussian(ガウス)
ガウス関数:正規分布、電子の状態密度等で使用される、釣鐘状のグラフで表現される
Laplacian(ラプラシアン)
ラプラス作用素:熱や流体の拡散方程式、波の伝達といった現象の表現に使用される
Mean (平均)
Curvature (曲率)
Median (中央値)
Offset (オフセット)
まとめ
液体っぽい表現には、Laplacian(ラプラシアン)を選択するのが正解のような気もしますが、物理的に正しいものが目指す演出と一致するとは限りませんのでこのように比較したデータを残しておくことで後の制作の際に参考になれば良いなと思います。流体の表現を制作する際にはどうしても時間がかかってしまうのですがこれらのトライ&エラーの積み重ねによる経験値が制作時間の短縮につながれば良いなと思います。