この記事でのバージョン
Unity 5.5.0p1
はじめに
ParticleSystemはtimeScale変更するとそれに合わせて再生速度も変わるようになっています。
ただ、残念ながらtimeScaleを無視して一定速度で再生するような設定はないようです。
Simulate
timeScaleが変わっても一定速度で再生したい!
そんな時に使えるのがParticleSystemのSimulateです。
以下のような形で任意の時間分、パーティクルを進める事が出来るので、
これをUpdateで実行し続ければ、timeScaleを無視して一定速度で再生を続ける事が出来ます。
private void Update () { _particleSystem.Simulate( t : Time.unscaledDeltaTime, //パーティクルシステムを早送りする時間 withChildren : true, //子のパーティクルシステムもすべて早送りするかどうか restart : false //再起動し最初から再生するかどうか ; }
試しにSimulateを使って再生したパーティクルが下の例の右側です。