【UE4】【Niagara】ナイアガラエミッターの流用などについて
今回はNiagaraEmitterについて
Verは4.20.2です
【エミッターの数値の連動について】
基本的にはカスケードにあったエミッターと同じ感覚で良いのですが。
カスケードと違い、エミッターというアセットが別途保存出来たりするので、それによって変わってくる部分もあるので、主にそこについてです。
カスケードのエミッターも、他のカスケードのデータにエミッターのコピーする事は可能です、ただしこれは単純なコピー&ペーストになります。
一方、ナイアガラのエミッターの場合、エミッターのアセットと連動するような動きになります、イメージとしてはマテリアルと、マテリアルインスタンスと近いものだと思います。
エミッターのアセット自体がマテリアルなら
システムに登録してあるエミッターは、マテリアルインスタンスと近い関係性を持ちます。
例として、例えばこの大きさを変更するモジュールが登録されていた場合。
エミッター側で1と設定して、システムにエミッターを登録するとそのまま1がデフォルトとなりますが。
この登録された状態で、エミッター側のデフォルトを5などに設定すると、システム側の自動で差し替えられます。
ただし、エミッター側で1に設定して、システムに登録した後に
システム側で1.5などに変更した後に、エミッター側で5などに変更した場合は、システム側は1.5のままになります。
その場合はシステムに登録してあるエミッターには、緑の矢印が付きます。
この矢印をクリックすると、その段階で、エミッターに登録されている数値で上書きします。
システム側で数値を調整していればいいのですが、エミッターの数値をそのまま入れている場合、エミッターの数値を変更すると、システム側も数値が書き変わったりするので注意を。
とはいえ、エミッターのデフォルト設定は、システムに登録した際のデフォルトとなるので、最初作るときに、汎用性の高い数値を設定しておくと、その後の作業が楽になります。
【システム内で出来る事】
エミッターの数値の変更等は、大体はシステムに登録した状態でもできるのですが、いくつか出来ないことなどもあるので、その辺について。
大きいのは、モジュールの追加はできますが、削除は出来ません。
ただし、システムで新規追加したモジュールであれば削除はできます。
なので、エミッター自体にあまりモジュールを追加しすぎると、見にくくなってしまうので注意です。
また、モジュールの削除はできなくても、処理をしない処理にはできるので(ゴミ箱の横のチェックを外す)単純に見にくくなるだけなので、あまり深く考えすぎなくてもいいかなとも思います。
また、エミッターにモジュールを追加した場合、そのエミッターが使われているシステムがあれば、システム側のエミッターにも、追加したモジュールが増えるので。
既にシステムに入れてあるエミッターにモジュールを追加する場合、デフォルトでは描画をしないようにしましょう。
ナイアガラの、エミッターが別々のアセットとして保存される形式は、カスケードと比べると、自分で作った動きを簡単に複製しやすいので、新しいエフェクトを作る際の手間が減る、というメリットが大きいですが。
その反面として、エミッターのアセットが増えすぎるとややこしくなる、というデメリットも当然あるので、エミッターは汎用性を持たせたデータ作りを意識すると良いのかなと思います。
ある程度触った個人的な感想として、エミッター上ではある程度大雑把な動きを作っておき、システム側で微調整する前提で作ったほうが、使い勝手の良いデータになると思います。
【まとめ】
ナイアガラのエミッターの仕様は、管理しやすいとも、しにくいとも取れる構成なので、管理しやすいデータ作りを。