UE4でエフェクト。

UE4cascadeの個人用メモなど。

エミッタの中身のメモ【Requied】

こちらのブログも参考にしつつ。

 

f:id:ATMoja:20151214111735p:plain

 

エミッタの中身の「Requied」項目のメモ。

 

【エミッター】
Material
>設定するマテリアル

Emitter Origin
>発生時の位置

Emitter Rotation
>発生時の回転

Screen Alighment
>パーティクルのスケールを変える際にXYの比率を固定するかの指定。
 ・PSA_Square ・・XYの比率を固定
 ・PSA_Rectangle ・・XYの比率を固定しない
 ・PSA_Velocity ・・スケールXYを固定せず、また飛んでゆく方向に角度を合わせる
Use Local Space
>チェックを入れると、パーティクルシステムをアタッチした骨が動いても
パーティクル全体がエミッタに追従するらしい。
かなり重要項目!!

SortMode
PSORTMODE_None
>ソートなし
PSORTMODE_Viewprojdepth
>パーティクルのビューが投影された深度でソート
PSORTMODE_DistanceToView
>ワールド空間で表示するためにパーティクル距離でソート
PSORTMODE_Age_OldestFirst
>寿命でソート、古いものが最初に描画
PSORTMODE_Age_NewestFirst
>寿命でソート、新しいものが最初に描画


【継続時間】
Emitter Duration
エミッタの寿命(秒)
0にするとエミッタは永久に存続し続けます。
Emitter Loops
実行する回数(何度ループさせるか)。
0にすると永久に繰り返し実行し続けます。

【遅延】
Emitter Delay
発生時、遅らせるかの指定。
基本的にエミッタがループする度にディレイの値分だけ遅延が行われるが
Delay First Loop Only にチェックを入れると
最初に遅延が行われて以降は遅延しなくなる。

【サブUV】
>マテリアルアニメ。
PSUVIM_None
>適用無
PSUVIM_Linear/PSUVIM_Linea_Blend
>任意の順序で画像間を滑らかに移動。
PSUVIM_Random/PSUVIM_Random_Blend
ランダムに次の画像を選択。

【マクロUV】
勉強中。
あとで追記予定。

【レンダー】
Max Draw Count はパーティクルを表示する最大数。
処理量やメモリに合わせて制限するためのものらしい。


【Normals】
ノーマルマップの設定かな…?
勉強中。あとで追記予定。

UE4でのエフェクト作業の流れ。

作りたいエフェクトを考えたら、まず設計をします。

 

【設計】

作成したいパーティクルを考える

(サンプルのP_Explosion であれば、「爆発」)

パーティクルをパーツにわける(エミッタ)

(サンプルのP_Explosion であれば「閃光」「火の玉」「煙」etc…)

パーツごとのマテリアルを考える(モジュール)

(「火の玉」の中身)

 

 

 

設計できたら、次は「作成」です。

 

 

 

【作成】

マテリアルを作成する

(「火の玉」のさらに中身のSubUVのマテリアル)

モジュールを追加する

(subUV、重さ、寿命、etc…)

エミッタが完成

(「火の玉」のエミッタが完成)

上記を繰り返して必要なエミッタを必要な数作成する

(「火の玉」「閃光」「煙」etc…を順番に作っていく)

 

 

こんな感じの作業の流れになります。

爆発パーティクルを見てみる。

サンプルに入っているもののうち、爆発から見てみることにします。

 

P_Explosion というものをダブルクリックすると

カスケードが開きます。

というか、開いたのがカスケードです。

 

ビューポートに爆発が表示されており、

ツールバーだのカーブエディタだのが並んでいる中、

「エミッタ」というタブが並んでいます。

 

この「エミッタ」が、エフェクトを構成するものの材料で、

爆発の場合

Shockwave」衝撃波

「FireBall」火の玉

「Sparks」閃光

「fire_light」火の光

「Smoke」煙

というパーツで構成されています。

 

そのパーツを各々紐解いていきます。

 

各一番上のエミッタ「Required」というのが

エミッタの一番大元の設定部分。

Materialが設定されているのがわかります。

 

Materialには大概テクスチャが設定されているので、

パーティクルを作成するにはまずマテリアルを用意する必要があることがわかります。

 

その他のパーツ(モジュールといいます)は、

色のアニメーションだの長さだの、設定項目となります。

 

f:id:ATMoja:20151214102251p:plain

 

 

 

サンプルのインストール

何もないところからより

サンプルを見てみる方がイメージがつかみやすいので

サンプルをインストールします。

 

 

ランチャーのライブラリ から

MyGame TexturesMaterial Pack 

をダウンロードし、サンプル用のプロジェクトにインストール。

 

f:id:ATMoja:20151214095717p:plain

 

コンテンツブラウザの中に「StarterContent」が出来、

その中の「Particles」フォルダの中にサンプルのデータがたくさんできます。

やったー。

ダブルクリックでカスケードが開きます。