Unityのパーティクル設定(Shuriken)

(2017-04-13)

UnityにはShurikenというパーティクルシステムがある。

Sphereを置いてParticle Systemを追加すると、Particleが出始める。

Particleの初期状態

モジュール

設定項目が多いためモジュールに分かれている。ひとまずデフォルトで有効になっている

  • (メインモジュール)
  • Emission
  • Shape
  • Renderer

について見ていく。

メインモジュール

  • Duration: 5
  • Looping: true

デフォルトだとLoopingにチェックが入っているのでずっと出ているが、チェックを外すとDurationで止まる。

  • Start Delay: 0
  • Play On Awake: true

PlayOnAwakeがtrueでStartDelayが0なので実行してからすぐにParticleが出始める。

  • Start Lifetime: 5
  • Max Particles: 1000

StartLifetimeはParticleが消えるまでの時間。ただしMaxParticlesに達したら消される。

  • Start Speed: 5
  • Simulation Speed: 1

StartSpeedはParticleの初速で、上げると勢い良く飛んでいく。 SimulationSpeedを上げるとParticleが出るのも含めて全体のスピードが上がる。

  • Start Size: 1

Particleの初期サイズ。小さくすると塵みたいになる。

  • Start Rotation: 0

Particleの初期角度。

  • Gravity Modifier: 0

重力値。0だと無重力。

  • Simulation Space: Local

Particleをlocal座標かworld座標で動かすか。 Localだとオブジェクトが移動したときに一緒に移動する。Worldだと置いてかれる。

  • Scaling Mode: Local

ParticleのScale。LocalだとそのオブジェクトのScaleだけを見る。Hierarchyだと親も考慮したScale。Shapeだと開始位置だけ。

Emissionモジュール

  • Rate over time: 10

単位時間あたりにParticleを出す数。

  • Rate over Distance: 0

オブジェクトが移動するときにParticleを出す数。Simulation SpaceがWorldのときのみ有効。

Shapeモジュール

  • Shape: Corn

Particleを出す形。Cornだと特定方向に向けた円錐状に出る。

ShapeがCorn

Spehreで全方向に出したり、

ShapeがSphere

Hemisphereで片側だけ出したり、

ShapeがHemisphere

EdgeでY方向に直線上に出したりすることができる。

ShapeがEdge

そのほかのパラメータはShapeに応じて設定する。

Rendererモジュール

  • Render Mode: Billboard

Particleがどのようにレンダリングされるか。Billboardは常にカメラに向くようにレンダリングされる。

Stretched Billboardにするとカメラの方向に向きながら、stretch and squashさせる。つまり速度を強調するように変形させる。

Render ModeがStretched Billboard

  • Material: None

Particleのmaterial。これにDefault-Particleを指定するとこうなる。

MaterialがDefault Particle

AfterBurner

Standard AssetsにあるAfterBurnerの設定を見てみる。

AfterBurner

中央の濃い部分と、そのまわりの薄い部分の2つの設定を組み合わせている。 Explosionとかは9個組み合わせているので比較的シンプル。

濃い部分ではEmissionのRate over Timeを80にすることで続いているように見えるようにして、 Size over LifetimeモジュールのSizeを徐々に小さくすることによって尾の方にかけて細くなるようにしている。

AfterBurnerのSize over Lifetime

さらにColor over LifetimeモジュールのColorで両端のAlphaを0、Location 6.0%のAlphaを30に設定することで、 素早くフェードインし、徐々にフェードアウトするようにしている。

また、Start SizeをRandom Between Two Constantsの(1.2, 1.4)に設定することで多少揺らいでいるように見せている。

AfterBurnerのSize over Lifetime

薄い部分ではEmissionのRate over Timeを60、ColorのLocation 6.0%のAlphaを8に設定して薄く見せている。 あとはSize over Lifetimeを設定し、Start SizeはRandom Between Two Constantsの(4,6)と大きく設定してある。