おでんブログ

ゲームデザイナーな自分がUE4でつまづいたところを記録していくブログ

UE4でキャラクターに軌跡(トレイルエフェクト)をつける

UE4では銃で撃った弾の弾道や、キャラクターが移動した軌跡を

RibbonDataというタイプのパーティクルエフェクトで表現することができます。

こんな感じの軌跡をつけていきます。

f:id:marutoku-oden:20200121193903p:plain

 

 

手順としてはこんな感じ

  1. セットアップ
  2. RibbonDataのパーティクルを作る
  3. 軌跡を出したいキャラクターでパーティクルをスポーン(生み出す)させる。
  4. パーティクルを整える

1.セットアップ

UE4 のバージョンは 4.24 、サードパーソンのテンプレートを使っています。

f:id:marutoku-oden:20200121183325p:plain

テンプレートを選ぶ

 

2. RibbonDataのパーティクルを作る

まず新規でパーティクルデータを作ります。

f:id:marutoku-oden:20200121183655p:plain

新規でパーティクルを作る

作ったパーティクルを開いて、

下図のようにエミッタのタイプデータをRibbonDataに変えます。

f:id:marutoku-oden:20200120180425p:plain

RibbonDataにする

 

3.軌跡を出したいキャラクターから作ったパーティクルを生み出す。

今回はブループリントで生み出してみます。

 

ThirdPersonCharacterのブループリントを開きます。

テンプレートそのままならここにあるはず↓

コンテンツ>ThirdPersonBP>Blueprints

 

イベントグラフのBeginPlayでSpawnEmitterAttachedを呼び出して

EmitterTemplateの欄には先ほど作ったパーティクルを指定。

AttatchToComponentにはキャラクターのMeshを渡します。

f:id:marutoku-oden:20200120181724p:plain

BluePrintでRibbonDataパーティクルを生み出す

これだけですでに

f:id:marutoku-oden:20200120182059p:plain

こんな感じで軌跡っぽいものが出るはず。

デフォルトのテクスチャだし、もにょもにょしてるけど…

 

 

4.パーティクルを整える

さすがに見た目がひどすぎるので整えていきます。

でも面倒なのでテクスチャは使いません。

 

では、まずマテリアルを作ります。

パーティクルの時と同じように、新規でマテリアルを作ります。

f:id:marutoku-oden:20200121190206p:plain

新規でマテリアルを作る

マテリアルの設定画面はこんな感じ。

f:id:marutoku-oden:20200121190626p:plain

マテリアルの設定画面

ここの詳細タブで下図のように

BlendModeとShadingModelを変更します。

※ひとつだけある茶色いノードをクリックすると下図の設定を編集できます。

f:id:marutoku-oden:20200121191206p:plain

BlendModeをTranslucentに変更

f:id:marutoku-oden:20200121191243p:plain

ShadingModelをUnlitに変更

カスケード(パーティクルエディタ)でパーティクルの色を変えられるように

ParticleColorを下図のようにつなぎます。

f:id:marutoku-oden:20200121191641p:plain

ParicleColorのRGBとAをつなぐ

 

できたらこのマテリアルをパーティクルに設定していきます。

f:id:marutoku-oden:20200121192016p:plain

作ったマテリアルをセット

・パーティクルの設定を変更していきます。

まず色が気になるので

ColorOverLifeの値を変えます。僕は紫にしてみました。

f:id:marutoku-oden:20200121193516p:plain

サイズも大きすぎたのでInitialSizeを変更します。

f:id:marutoku-oden:20200121193520p:plain

ふにゃふにゃしちゃうのをやめたいので、InitialVelocityを全部ゼロにします。

f:id:marutoku-oden:20200121193524p:plain

で、試してみるとこんなSFちっくなトレイルエフェクトがいい感じにできました。

f:id:marutoku-oden:20200121193903p:plain

 

これを利用すれば、FPSの弾の軌跡やキャラクターの動きを表現できると思います。

 

おしまい。