0
1

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 3 years have passed since last update.

Unity Particle SystemAdvent Calendar 2021

Day 7

VRChatプレイヤーによるParticle System解説 ~External Forces, Noise Module編~

Posted at

この記事はUnity 2019.4.29f1の記事です

Force over Lifetime, Color/Size/Rotation over Lifetime, by Speed Module編 << ここ >> 次

はじめに

この記事はちょっとParticle System触れるようになったけどまだまだ知らないパラメーターだらけで抵抗感がある人向けにじゃあ全項目解説しようという記事です。

**パーティクル?シェーダー?憧れるけどよくわかんない…**という人は最近は[VRCUnity勉強会][link-1]などで初歩の初歩から解説してくれる講座などが解説されているのでそこに参加してみたりするといいでしょう。
[link-1]:https://discord.gg/mtvTTyM
その他にこの記事はアドベントカレンダーにしてParticle Systemの記事を増やしてパーティクルへの抵抗感を減らしてやろうという企みもあります。

##External Forces, Noise Moduleってどこ?
image.png
ここ
##External Forces
主にWind ZoneやParticle Force Fieldを使う時に関係するところ
アバターだと関係ない
###Multiplier
デフォルト 1 (0~3.402823e+38)
単位 倍
パーティクルが影響をどれだけ受けるか決めるパラメーター
###Influence Filter
デフォルト Layer Mask
どのレイヤーのモノの影響を受けるか、どのオブジェクトの影響を受けるか指定するパラメーター
##Noise
パーティクルの動きやサイズにカスタムできるランダム要素を足すModule
この記事の主題と言っていい
基本的に二次元の波をイメージして考えると分かりやすい
###Separate Axes
デフォルト OFF
ノイズをXYZに分けて操作できるようにするパラメーター
###Strength
デフォルト 1 (-100,000~100,000)
ノイズの強さのコントラストを決めるパラメーター
波で言うところの高さの幅を調整するところ
image.png
実際にデフォルトでParticle System出した状態からShapeだけOFFにしてNoiseONにしてここだけ弄った方が分かりやすい
###Frequency
デフォルト 1 (0.0001~100,000)
ノイズの密度を決めるパラメーター
波で言うと横幅をギュッと詰めて密度を上げる感じ
値が小さくなると密度も小さくなり値が大きくなると密度も大きくなる
###Scroll Speed
デフォルト 0 (-100,000~100,000)
ノイズの流れる速度を決めるパラメーター
波で言うと流れる速さ
値が小さいとパーティクルがゆっくり揺れて値が大きくなればパーティクルがブルブル暴れる
###Damping
デフォルト ON
ノイズの急激な変化を抑えるパラメーター
image.png
波の急勾配をなだらかにするイメージ
###Octaves
デフォルト 1 (1~4)
単位 枚
ノイズテクスチャを何枚重ねてノイズを計算するか決めるパラメーター
複数のノイズを重ねて1枚のノイズを作るための項目、ちなみに乗算
数を増やすほど生成するノイズの数が増えるため負荷が跳ね上がる
####Octave Multiplier
デフォルト 0.5 (0~1)
重ねるレイヤーの濃さ
0から少しずつ増やしてみるとグラデーションが見えて何となく分かる
####Octave Scale
デフォルト 2 (1~4)
単位 倍
重ねるレイヤーの大きさ
###Quality
デフォルト High(3D)
ノイズ生成の方式を決めるパラメーター
1D,2D.3Dノイズから生成する方法がある(perlin noiseとかで検索してください)
###Remap
デフォルト OFF
これまでに生成されたノイズを元に改めて値を振るかどうか決めるパラメーター
下のRemap Curveで振り分ける値を調整するが縦軸が振り分ける値、横軸が生成されたノイズの値(0~1)
上のSeparate AxesをONにするとXYZに分かれる
###Position/Rotation/Size Amount
デフォルト 1/0/0
ノイズの値をパーティクルの動き/回転/大きさにどれだけ反映させるか決めるパラメーター
##おわり
というわけでExternal Forces,Noise Moduleでした
External Forcesはアバターで使うことないのもあって端折りましたがNoiseはちょっと使うだけで一気に単調じゃないパーティクルになるのでなんか今ひとつだな…って時は使ってみると良いです
次はCollision Moduleです


Force over Lifetime, Color/Size/Rotation over Lifetime, by Speed Module編 << ここ >> 次

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?