次に具体的な処理を組んでいきます。
まずはコンテンツブラウザ上で選択しているテクスチャのプロパティ「sRGB」を、専用の関数を使って ON/OFF する処理を組んでみましょう。
BP を作成
いつものように 📘 Get Seleceted Assets を追加したら、続けてテクスチャのプロパティ変更のために「📘 Cast To Texture2D」を追加します。
アセットを複数選択している可能性があるので、Return Value の配列から最初の1つだけ取り出すよう「📗 Get (a copy)」を挟みます。
📘 Cast To Texture から線を引っ張り出して「Set」で検索するとプロパティの設定ができる関数が大量に見つかります。「sRGB」で検索を絞って「📘 Set sRGB」を追加します。
具体的にどう設定するかは Set 関数内に設定項目がそのまま内包されているので、ノード上で設定しておきます。ここでは「sRGB は OFF(無効)」に設定しました。
コンパイルして保存します。
BP を実行
コンテンツブラウザに適当なテクスチャを用意してテクスチャエディタを開き 📰 Details 内の「📋 TEXTURE」の「sRGB」のチェックボックスを ON にして保存しておきます。
先ほど作成した『Editor Utility Widget』を右クリック、メニューの一番上にある「Run Editor Utility Widget」を選択して実行します。
メニューが表示されました。
コンテンツブラウザ上でテクスチャを選択しておいてから「Press」ボタンをクリックします。sRGB のチェックボックスが外れたのが確認できたでしょうか?
ON/OFF をトグルする
もう一度グラフに戻って処理を追加します。
📓 Branch を追加して「📘 Get sRGB」を挟むことで、sRGB の設定が ON なのか OFF なのかを判定させます。そして「📘 Set sRGB」を2つに増やして「もし ON なら OFF にする」「もし OFF なら ON にする」と設定を逆に変更する構成にします。
コンパイルして保存したらもう一度テクスチャを選択して実行してみましょう。ボタンを押す度に sRGB が ON/OFF されるのが確認できればOKです。
📘 Cast To Texture2D と 📘 Cast To Texture の違い
BP からテクスチャのプロパティを変更する際には、図のように「📘 Cast To Texture」または「📘 Cast To Texture2D」を挟む必要があります。
基本的にはどちらでもプロパティの変更が可能なようですが、X と Y のタイリング方式を変更する場合は「Texture2D」でないとダメなようです。
他にも違いがあるかも知れません。何か分かれば追記したいと思います。