プレハブの更新タイミングについてメモ。
プレハブは非常に簡単に更新できる。プロジェクトビューからプレハブを選択して、インスペクターで値を変えるだけで良い。しかしここで罠があった。プレハブを更新したからといって、プレハブのファイルまで更新される訳ではないらしい。
■プレハブを更新するタイミング
何が問題かというと、ファイルが変更されないのでプレハブの値を更新してもバージョン管理システムに反映されていなかったり、Unityエディタが落ちた時にプレハブを遺してくれなかったりする。
上:プレハブを変更してもGIT更新リストに表示されない
ただ、シーンはマージしにくいのでセーブ強制というのも中々面倒くさい。一応、Unityエディタを(正常に)終了するタイミングでプレハブを保存してくれるのだが、一つ作業を終わらせるたびにエディター再起動とか、ちょっと勘弁願いたいレベルだ。
パっと思いついた対策はプレハブ更新用のシーンを用意しそれを更新するとかだが、果たして。
※Windowsは異なる可能性があります
プレハブが更新されるタイミングは以下のとおりです。
そのため、バージョン管理システムへ渡す前に以下のいずれかを行う必要があります。
- File > Save Project を実行する
- シーンを保存する
- エディターを終了させる
このいずれかを行う前にエディタが強制終了したりした場合はプレハブ情報が壊れるので、プレハブを作ってApply実行後はちゃんとSave Project するのをお勧めします。
バージョン管理へファイルを渡す前にも同文。