Niagara楽しんでますかー?
Niagaraは様々なモジュールを積み重ねて(スタック型)バリエーション豊かなVFXを作成することができます。
それぞれのモジュールが関連性を持って動作するのですが、
どのモジュールがどのモジュールに影響を受けるのか最初はよくわからないこともあると思います。
最終的にはNiagaraModuleScriptを読むのがもっとも正確なのですが、
その前にNiagaraEditor上でもその理解をちょっぴり助けてくれるオプションを紹介します。
Show Linked Script Inputs
とShow Outputs
例としてSpriteSizeScaleByVelocityモジュールを見てみます。
エミッターに追加して個別に選択してみるとこのような画面になると思います。
右上に目玉のアイコンがあるのでそれをクリックしてShow Linked Script Inputs
とShow Outputs
にチェックを入れてみます。
すると以下の様にモジュール表示の上部と下部に追加のパラメータが表示されます。
上部のLinkedScriptInputsがこのモジュールが参照しているパラメータです。
SpriteSizeScaleByVelocity.Velocity Threshould
のようにモジュール自体の名前がついているパラメータは モジュールインプットパラメータ です
モジュールインプットパラメータは表示オプションにチェックを入れる前から、モジュール詳細ビューのInputsに並んでいたプロパティ達で、
NiagaraModuleScriptの中ではModule.Velocity Threshould
という形でModuleというカテゴリ内に配置されます。
モジュール名を冠していないパラメータ(例えば Particles.Velocity)はこのモジュールの前に実行されて値がセットされていればそちらを読みだして使います。
モジュール下部のOutputsにはそのモジュールが出力しているパラメータが表示されています。
今回のモジュールは Local.SpriteSizeScaleByVelocity.NormalizedVelocityRange
と Particles.SpriteSize
の二つが出力されているということを示しています。
NiagaraModuleScriptの中をのぞいてみると Map.Set につながっているのが確認できます。
Particles.SpriteSize は最終的に SpriteRenderer の入力として使われます。
以上です。