UnityでFPSをつくる その10-3 [ シーン遷移 ]

前回まででスケールアップ演出の実装が完了しました。
もう少し華やかさを加えたいので、パーティクルシステムを使って紙吹雪を表現していきます。
HierarchyウィンドウへEffects → Particle Systemを作成してください。

No.465

白い粒が連続して発生していることが確認できます。

No.466

この粒(パーティクル)の大きさや間隔、色、形状等を変化させることによって液体、雲、炎などの様々な演出が可能になります。
設定項目を調整して紙吹雪を作りましょう。

※以下の動画を参考にさせていただきました。

まずはParticle Systemオブジェクトを「Confetti」にリネーム、Transformをリセットして以下の値にしてください。

No.467

Particle Systemの基本項目を以下のように変更します。

No.468

「Prewarm」にチェックを入れると、ゲーム開始時点で既にパーティクルがある程度発生している状態になります。

No.469

「Start Lifetime」はパーティクル発生から消滅までの時間を秒で設定。
「Start Speed」は1秒あたり何Unit(Unityでの長さの単位)進むか、初速を決めます。

No.470

次に、「Start Size」の「▼」をクリックして「Random Between Two Constants」を選択、値を以下のようにしてください。

No.471

「Start Size」はパーティクル発生時の大きさを決めます。
「Random Between Two Constants」で設定した幅から、ランダムに値が決まります。

No.472

続いて、「Start Color」の「▼」をクリックして「Random Color」を選択、

No.473

「Start Color」のカラーバーをクリックすると「Gradient Editor」が表示されるので、Editor内のカラーバーをクリックしてColorの値を以下のようにします。

No.474

グラデーションバーの下部をクリック

No.475

追加された上向き矢印を数値入力して位置調整

No.476

グラデーションバーの下部をクリック

No.477

追加された上向き矢印を数値入力して位置調整

No.478

以下同様に3つ矢印を追加して、位置と色を数値で調整します。

No.479
No.480
No.481

最後に右下端の矢印(Location 100%)を選択、色を調整して、「Start Color」の設定は完了です。

No.482

これにより、Duration時間に応じてパーティクル発生時の色が変わります。

No.483

次に「Gravity Modifier」の値を以下のようにしてください。

No.484

プラスの値を設定することで下向きの、マイナスの値を設定することで上向きの重力(Gravity)がかかります。

No.485

次に「Emission」モジュールの「Rate over Time」を以下のようにしてください。

No.486

これで、1秒あたりに発生するパーティクルの数が決まりました。

次は「Shape」モジュールの「Shape」を「Box」にします。

No.487

ここで設定した形状の内側からパーティクルが発生するようになります。

No.488

次は「Velocity over Lifetime」モジュールの「▼」をクリックして「Random Between Two Constants」を選択、値を以下のようにしてください。

No.489

これにより、パーティクル発生時にLinearに設定した範囲内の速度がX方向に加わり、左右に散りながら落下する状態を再現できます。

No.490

次は「Rotation over Lifetime」モジュールの「Separate Axes」にチェックを入れて「Random Between Two Constants」を選択、XYZの値を以下のようにします。

No.491

ここでは、パーティクルが消滅するまでの間、1秒間に回転する度合いを決めています。
範囲を「360」から「-360」に指定しているので、各軸で1秒間に最大2回転することになります。

No.492
No.493

最後に「Renderer」モジュールの「Material」を「Sprites-Default」にします。

No.494
No.495

ぼやっとした見た目から、はっきりと色が付いて紙片のような見た目になりました。

No.496

パーティクルシステムを使った紙吹雪の完成です。

長くなってきたので続きは次回にしたいと思います、おつかれさまでした!

FPS

Posted by kenji