Niagaraの入門(14) Niagara Parameter Collection (NPC) BPとの連携

Niagaraの入門(14)

UE4確認バージョン  4.20.1

※なおこの段階ではNiagaraはアーリーアクセスなので

※今後内容がかわるかもしれないのでご注意ください

NiagaraParameterCollectionについて

 以前お話したParametersのところにあるNiagaraParameterCollectionですが、

(略 NPC  らしい、、誤解うみそう、、)

Emitter上から追加しようとするとすでにいくつか候補がでるだけで新規で追加ができません。

f:id:CrabPunch:20180814065511p:plain

 

 

追加方法としては

コンテンツブラウザのアセット作成からNiagaraParameterCollectionを選び

f:id:CrabPunch:20180814065518p:plain

 

 

 作成されたNewNiagaraParameterCollectionを開き、

+ボタンからColorを新規で追加してみます。 

f:id:CrabPunch:20180814065525p:plain

f:id:CrabPunch:20180814065533p:plain

 

 

 Colorが追加できたら後の実験でわかりやすいように

いつものように色を赤色にでも設定してみてください。 

f:id:CrabPunch:20180814065553p:plain

f:id:CrabPunch:20180814065604p:plain

 

 

 

NPCアセットの設定ができたのなら再度Emitterに戻り

Palameterの追加をみると

NPC.NewNiagaraParameterCollection.NewLinearColor

というパラメーターが追加できるようになっています。

f:id:CrabPunch:20180814065613p:plain

 

 

内部の値的には先程設定した赤色が入っているはずなので

Colorにドラッグしてみます。

f:id:CrabPunch:20180814065623p:plain

f:id:CrabPunch:20180814065632p:plain

 

 

 

Blueprint(BP)との連携

 先程パラメーターを参照するEmitterをSystemに紐づけ。

Level上に配置してみます。

f:id:CrabPunch:20180814065645p:plain

 

次にLevelBlueprintあたりの開始に、

GetNiagaraParameterCollection

にて自分が作成したNPCアセットを指定します。

f:id:CrabPunch:20180814065702p:plain

 

その後、

SetColorParameter

にてColorの名前を指定して

色を変更します。

f:id:CrabPunch:20180814065711p:plain

 

 

この状態でPlayをすると先程のBPが動作するので以下のように

parameterの中の値を動的に変更することができます。

f:id:CrabPunch:20180814065725p:plain

 

 

 

注意

NPCアセットのNamespaceのリネームに関して、

この状態でのColorのParameterのnamespaceは

NPC.NewNiagaraParameterCollection.NewLinearColor

となっています。

f:id:CrabPunch:20180814065737p:plain

 

ここでNewNiagaraParameterCollectionからMyNiagaraParameterCollection

にリネームすると

なぜかColorのNewLinearColorのところが

前回のフルの名前になってしまいます。

f:id:CrabPunch:20180814065747p:plain

 すでに配置しているEmitter内の参照なども一部おかしくなります。

f:id:CrabPunch:20180814065759p:plain

本来であればColorの名前は

NewLinearColorのままで、

フルのNamespace自体が

NPC.NewNiagaraParameterCollection.NewLinearColor

から

NPC.MyNiagaraParameterCollection.NewLinearColor

となるのが適切な動作なきもしますが、

現状リネームするなどした場合は、内部のパラメーターなど再度作りなおすなり、

個別に名前を指定しなしてやらないといけないので

注意してください。