18/09/26 12:19:22.56 N7h9vzLV.net
スクリプトで プレハブを更新すると シーンのオブジェクトの座標が原点になってしまいます。
どうすればいいでしょうか?
オブジェクトを原点に配置して A.prefab を作りました。
これを 複数D&Dし、 適当に配置して シーン B.unity をセーブしました。
スクリプトで A.prefab を更新しました。座標は原点のままです。
シーンファイル B.unity をロードしてみると、
配置したオブジェクトがすべて原点になってしまいました。
オブジェクトとプレハブとはヒモ付いていて、文字の色は青くなっており。物は更新されています。
B.unity のソースを開いてみると m_LocalPosition の値は持っています。
これを読み込む段階で更新したプレハブだとトランスフォームの値が無視されて原点になってしまうのです。
プレハブを更新する時に使ったスクリプトはこんな感じです。
string pt = "Assets/Prefab/A.prefab";
GameObject pPrefab = AssetDatabase.LoadAssetAtPath(pt, typeof(GameObject)) as GameObject;
PrefabUtility.ReplacePrefab(obj, pPrefab);