【UE4】パーティクルで攻撃ヒットエフェクトを実装する

前回までの実装で敵に攻撃をヒットさせる事ができるようになったので、今回はヒットに合わせてパーティクルエフェクトを表示させようと思います。
※画像はクリックで拡大できます
パーティクルで使うマテリアルの作成
ヒットエフェクト用のパーティクルで使うマテリアルを作成します。コンテンツプラウザ上で右クリックして「マテリアル」を選択します。

作成したマテリアルで使用するためのヒットエフェクト用テクスチャも適当に作りました。

作成したマテリアルをダブルクリックして編集していきます。
マテリアルのBlend Modeを「Additive(加算)」に変更する事で、背景黒色が透明にレンダリングされるようになります。
Shading Modelを「Unlit(ライティング無し)」にする事で、カラーのエミッシブ(発光色)のみを出力するようにします。

マテリアルのブループリントの方は、右クリックで「Particle Color」と「Texture Sample」を追加します。
Texture Sampleには先程作成したヒットエフェクト用テクスチャをセットします。
それぞれのRGB出力値を乗算し「エミッシブカラー」へ、アルファ値と赤値を乗算し「Opacity」へ接続します。

パーティクルの作成
コンテンツプラウザ上で右クリックして、「パーティクル」を選択します。

作成したパーティクルをダブルクリックして編集画面を開き、「Required」のMaterialに先程作成したヒットエフェクト用マテリアルをセットします。

「Required」 のDuration項目に「Emitter Loops」があるので、デフォルトではループしていますが値を1に変更する事で再生回数が一度になります。

「Spawn」のRateにあるConstantの値を調整する事で、パーティクルの発生数を調整する事ができます。

「Initial Velocity」のStart Velocityを各座標方向に正負の値をセットする事で、飛び散るような動きになります。
後は「Velocity/Life」や「Size By Life」を追加して、再生フレームが進むにつれての速度と大きさを調整したり、Lifetimeでパーティクルが消えるまでの時間を調整したりして好みのエフェクトにします。

調整の結果、こんな感じになりました。
パーティクルエフェクトのブループリント呼び出し
作成したパーティクルエフェクトを任意のタイミングで再生させるために、ブループリント上で「Spawn Emitter at Location」を呼び出す事で再生可能です。

パーティクルをセットしたEmitter Templateは右クリックで変数に昇格が可能なので、同じパーティクルを複数個所で呼び出す場合に重宝します。

パーティクルエフェクトの実装結果
敵への攻撃がヒットした時に、ヒットエフェクトが再生されるようになりました!
ディスカッション
コメント一覧
まだ、コメントがありません