パーティクルの具体的な作り方

ここではUnityのパーティクルの作り方について、サンプルを通して具体的に説明していきます。


※この記事で使用しているUnityのバージョン:Unity2019.1

今回作り方を説明するサンプル

今回作り方を説明するパーティクルの作例は2種類です。まずは実際の動きをご覧ください。

パーティクルの作例1

サンプル1:炎

パーティクルの作例2:雨

サンプル2:雨

では、それぞれ具体的な作り方を見ていきましょう。

サンプル1:炎

一つ目の炎のエフェクトのサンプルは、ロウソクの炎のようなシンプルな炎を表現しようと思いました。そこでパーティクルシステムの設定で次の項目を変更しました。

  1. パーティクル全般の設定
  2. 放出
  3. 形状
  4. 生存期間の色
  5. 生存期間のサイズ

パーティクル全般の設定

項目名 設定値
開始時の生存時間 1
開始時のスピード 4
開始時のサイズ 1.5

炎の場合、生存時間が長いと不自然なので時間を短くしました。また、炎の根本は粒子っぽい感じをなくしたかったので開始時のサイズを少し大きめに設定しました。

放出

項目名 設定値
時間ごとの率 50

時間ごとの率を増やし、密度を高めることで粒子っぽさをなくすようにしました。

形状

項目名 設定値
形状 円錐
角度 0
半径 0.2
半径の厚さ 0.5

デフォルトだとパーティクルが上に行くほど広がってしまうので、それを防ぐために角度を0にしたほか、半径を小さくするようにしました。これによって粒子のばらつきが少なくなり炎らしくなります。

生存期間の色

黄色→赤のグラデーションを設定。

生存期間のサイズ

時間がたつほどパーティクルが小さくなるような曲線を設定しました(下図)。

生存期間のサイズの設定例

サンプル2:雨

次に二つ目の雨のエフェクトのサンプルについてです。パーティクルシステムの設定で次の項目を変更しました。

  1. パーティクル全般の設定
  2. 放出
  3. 形状
  4. レンダラー

パーティクル全般の設定

項目名 設定値
開始時の生存時間 0.5
開始時のスピード -20
開始時の3Dサイズ ON、X=0.05

今回は上から下にパーティクルを移動させたかったので、開始時のスピードはマイナスです。また、雨粒を長細く表現するためにサイズXだけ小さい値にしました。

放出

項目名 設定値
時間ごとの率 50

雨の激しさは時間ごとの率で調整できます。

形状

項目名 設定値
形状 円錐
角度 0
半径 2

形状や角度は炎の場合と同じですが、雨の場合は逆に雨粒をばらつかせたかったので半径を大きめに取りました。

レンダラー

項目名 設定値
タイプ 垂直ビルボード

デフォルトのビルボードだと常にカメラの方向を向いてしまい少し不自然なので、「垂直ビルボード」に変更してY軸方向だけXZ平面に対して垂直になるようにしました。