LoginSignup
0
0

More than 1 year has passed since last update.

VRChatプレイヤーによるParticle System解説 ~Emission Module編~

Last updated at Posted at 2021-12-15

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

Main Module編 << ここ >> Shape Module編

はじめに

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

パーティクル?シェーダー?憧れるけどよくわかんない…という人は最近はVRCUnity勉強会などで初歩の初歩から解説してくれる講座などが解説されているのでそこに参加してみたりするといいでしょう。

その他にこの記事はアドベントカレンダーにしてParticle Systemの記事を増やしてパーティクルへの抵抗感を減らしてやろうという企みもあります。

Emission Moduleってどこ?

image.png
ここのEmissionって書いてあるやつ

本題

Rate over Time

デフォルト 10 (0~1e+07)
単位 個/秒
1秒間に放出されるパーティクル数を決めるパラメーター
説明不要

Rate over Distance

デフォルト 0 (0~1e+07)
このオブジェクトが移動した時に比例してどれだけの数パーティクルが出てくるか決めるパラメーター
どういう時に使うかと言うとParticle Systemのオブジェクトが動いたときのみにパーティクルを出したい場合に使ったり
移動量(速度)に比例して放出量が増える仕様を利用して移動量に関わらず一定の間隔でパーティクルを出したい場合に使う(下図)
RateoverTime.gif

仕様を調査するための実験結果

アニメーションでn秒間にnメートル移動した際秒間何個パーティクルが出ているか調査した
Rate over Distanceは10にした
設定内容
image.png
秒数(s) 移動距離(m) 秒間放出量(個/s)
10 10 10
10 100 100
1 10 100
0.5 10 200

結論: 秒速(m/s)*Rate over Distance = 秒間放出量(個/s)っぽい
今回の方法ではEmitter VelocityがRigidbodyとTransformで差が出ないがRigidbodyを親及び本オブジェクトに適用してる際はその限りでない

Bursts

決まった周期で決まった数のパーティクルを決まった回数放出させるための項目
image.png
決まった周期で(Interval)
決まった数(Counts)のパーティクルを
決まった回数(Cycles)放出させるための項目
決まった確率(Probability)で出たり出なかったりする
決まった秒数(Time)出るのを遅れさせたりもする

これの特徴はTimeが0の時オブジェクトが出た瞬間にパーティクルを出せること(Rate over Time等だと出た瞬間ではない)と
パーティクルの放出するタイミングを細かく指定できること
他にも例だと2つ並んでいるが右下の+を押して追加することで最大で8つまで項目を追加できる
Particle Systemで何か決まった動きをさせたい時に重宝する

おわり

というわけでEmission Moduleの解説でした
次はShape Moduleの解説をしたいと思います


Main Module編 << ここ >> Shape Module編

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