13
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Unity,VFX]SDF(符号付き距離場)を使ったVFXパーティクル芸

Posted at

#SDF(Signed Distance Field)を使ったパーティクルによるメッシュ形成術
制作物は以下のようなものになります。SDFを使うことで、パーティクルが任意の地点をぐるぐると循環するようになります。
SDFが何たるかはここでは説明しませんのであしからず。

###制作環境
Unity2019.1.0f2
※PackageManagerよりBurst、Mathmatics、Visual Effect Graphをインポートしておいてください。

#UnityにはまだSDFをベイクする機能はありません
残念ながらSDFをベイクする公式ツールは提供されていないようですので、こちらからSDFrというプラグインをお借りします。
Package化されてないので、Assets/以下のフォルダを丸ごとプロジェクトに放り込んでください。

#SDFrの使い方
SDF1.png

ベイクしたいオブジェクトにSDFbakerをアタッチします。使用したボタンは赤線をつけておきました。

  • Dimensions・・・ベイク後のTexture3Dのサイズになります。解像度はここを弄ってください。32^3で十分だと思います。
  • Encapsulate・・・モデルがちょうど収まるバウンドを設定してくれます。
  • Bake・・・ベイクします。書き込み先が設定されていなくてもファイルを作成してくれます。
  • Preview・・・ベイク結果を元のモデル位置に表示してくれます。このプレビューがうまくいってないとパーティクルが荒れます。

###Tips
**モデルデータのRead/Write Enabledをオンにしておきます。**これをしておかないと以下のようにベイク結果が破綻します(二枚目はSDF Flipをオンにした状態)。この状態のSDFデータをVFXに流し込むと、パーティクルが特定の場所に滞留してしまい、うまくモデルを形成してくれません。
SDF2.png
SDF3.png

#Visual Effect Graphのレシピ
SDF4.png

#将来的には公式がベイク機能を提供するでしょう。
この記事と使用したプラグインは近い将来obsoleteされると思いますが、それまでの間はこの方法でSDFによるパーティクル芸を頑張りましょう!!!
###参考文献
SDFr by xraxra, https://github.com/xraxra/SDFr

13
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?