Chapter 18

◽ 💬 アセットのプロパティ設定(Set)の罠 ❗

ポコ太郎
ポコ太郎
2022.01.03に更新

アセットのプロパティを変更した際に注意しておかないといけないことがいくつかあります。

エディタ上での反映

テクスチャの設定変更の場合はテクスチャエディタ上でリアルタイムで表示に反映されました。

しかしマテリアルやマテリアルインスタンスはエディタを開き直さないと反映されないため注意が必要です。他にもそういったアセットはあるかも知れません。

C++ で設定変更をリアルタイムで更新する方法はこちらの記事で解説されています。

https://qiita.com/EGJ-Kaz_Okada/items/0bf77ac5f920715e515b

編集フラグ(Dirty)

本来、アセットを編集すると「編集フラグ(Dirtyとも呼ばれる)」が立ち、コンテンツブラウザ上のサムネイルにグレーの星マークが付きます。

しかし、例えばテクスチャの場合は「📘 Set パラメータ名」の関数でアセットに編集をかけても編集フラグが立ちません。フラグが立たないままにすることが危険である旨と、フラグを立たせるための2つの対処法「アセットを保存する」または「アップデート関数を呼ぶ」についてこちらの記事で解説されています。

https://qiita.com/EGJ-Kaz_Okada/items/0bf77ac5f920715e515b

ですがテクスチャの場合はアップート関数は見当たりません。
アップデート関数が用意されているのは下記の2点だけの模様です。

  • 📘 Upadate Material Instance
  • 📘 Upadate Material Function

対処法:📘 Set Editor Property を使う

そこで「📘 Set Editor Property」を使えば編集フラグが立つので、各アセット標準のプロパティに関してはこちらを使って変更する方が良さそうです。

チェックアウト

プロジェクトをバージョン管理している場合、パラメータを変更しただけではチェックアウトされないので、チェックアウトしたい場合は専用の関数を利用します。