お世話になっております。
ポストプロセスボリュームの標準パラメータ(BloomとかChromaticAberrationのIntensity等々)と、
同じポストプロセスボリュームにセットされたポストプロセスマテリアル内のパラメータを
ブループリント上でコントロールして、ふたつをかけ合わせたような効果を作りたいですが、可能でしょうか。
試しにやってみたところ、ふたつの値を同時に設定しようとすると、標準パラメータは適用されて、ポストプロセスマテリアルのほうは効果がありませんでした。
試しにやってみた手順は下記のとおりです。
ポストプロセスマテリアルはSceneTextureのカラーをMultiplyで倍増して輝度を増すような効果を作り、
標準のChromaticAberrationと掛け合わせて、輝度を上げつつ色収差を適用したような(または、逆の順番でも)結果を得ようとしています。
(1)マテリアルを作成し「SceneTexture:PostProcessInput0」のColorに数値パラメータをMultiplyしエミッシブカラーにつなぐ。(画像1)
(2)Actorを親クラスとしたブループリントを作成し、DefaultSceneRootの子にポストプロセスコンポーネントを追加。
(3)ConstructionScriptで「CreateDynamicMaterialInstance」でポストプロセスマテリアルのインスタンスを作って変数に格納しつつ
「Add or Update Blendable」でポストプロセスコンポーネントにセット。(画像2)
(4)イベントグラフ上でカスタムイベントを作って、ポストプロセスコンポーネントには「PostProcessSettingを作成」でChromaticAberrationのIntensityをセットしたものを作り「Set Setting」で適用。
次に、マテリアルインスタンス(変数経由)に対して「SetScalarParameterValue」でマテリアルパラメータを設定。(画像3)
(5)レベルに当該ブループリントを配置して、レベルブループリントで(4)のカスタムイベントを呼び出す。
※レベルには別のポストプロセスボリュームがあります。
結果、ChromaticAberrationだけが適用されます。
そこで、カスタムイベント内で、「Set Setting」をせず「SetScalarParameterValue」だけにした場合は、ポストプロセスマテリアルの効果が発揮されます。
やり方や設定が間違っているのか、それとも、そもそも双方を同時に適用することはできないのか、ご教授いただけますと助かります。