お世話りなります。
UE4を学び始めて2ヵ月の初心者です。
こちらの動画[【UE4】How to make a radar with Post Process Effect(ポストプロセスエフェクトでレーダーを作ってみる) - YouTube][1]を参考にポストプロセス用のマテリアルとマテリアルインスタンス(配列の2つ目に設定)を組みました。
次にマテリアルインスタンスのパラメータの1つRangeの数値をブループリントで0~1の増加する数値で変更したいのですができませんでした。
1つ目の質問はこの数値の変更のやりかたを教えてくだい。
自分で調べたところDynamic Material InstanceをBP内のConstructionScript内で行うと良いらしいのですがそこではTimeLineが使えないみたいで困っています。
2つ目の質問は0~1へ上昇する数値の入力方法を教えてください。
以下補足など
ポストプロセスマテリアルの全体像
動画で作成したマテリアルです。
動画通りに動くのを確認しています。
拡大画像1
画像中央のRangeのパラメータが変更したい数値です。
拡大画像2
自分で組んだブループリント(ThirdPersonCharacter)
反応なし
その他
ポストプロセスマテリアルは他にも1つ、合計2つ設定しています。
もう1つの方はカスタムシンテル(配列の1つめ)を使用し正常に動いています。
よろしくお願いします。
補足まで付けて下さりありがとうございます。
ブログ記事とコメントを参照に
①マテリアルパラメータコレクションを作成し、変更したいパラメータを設定する
②マテリアル内の変更したいパラメータをCollection Parameterに差し替える
③Collection Parameterの詳細で作成マテリアルパラメータコレクションを指定し、ParameterNameを設定する
④イベントグラフでブログと同じようにブループリントを組むことによりできました。
お忙しいところ、的確な情報提供をありがとうございます!!
nasvic
(nasvic)
3
1つ目の質問
現在作成されているレーダーエフェクトの範囲をゲーム中動的に変化させたいという事をやりたいのだと思われますが、その場合はConstruction ScriptではなくEvent Graphとタイムラインノードで実行しましょう。ThirdPersonBPなどのEvent Graph上でキー・マウス入力などからタイムラインノードを実行して、動的に数値を変化させます。
2つ目の質問
ポストプロセスマテリアル内の値を動的に変化させたい場合は、マテリアルパラメータコレクションで変化させます。マテリアルパラメータコレクションを利用してポストプロセスマテリアルを動的に変化させる方法については以下のキンアジさんのブログ記事の後半部分を参考にされるのが分かりやすいです。
ポストプロセスマテリアルで画面をいろいろいじる 前編
補足:マテリアル グラフ上で、マテリアルパラメータコレクションを参照するノードを出すときは右クリックで「Collection Parameter」と入力すれば出てきます。(上記の記事では解説されてませんでしたので、念の為の補足です)