[Unity編輯器]AssetDatabase.AddObjectToAsset層次亂序的問題解決
備忘用
1.目標層級結構
/A.asset
/B.asset
/C.asset
/D.asset
2.實際可能出現的情況
/A.asset ----> 這個是子資源D,但名字變成和主資源一樣,且層級顯示亂序
/B.asset
/C.asset
/A.asset ----> 這個纔是主資源
3.解決方法
// 1.創建主資源
AssetDatabase.Create(A, assetPath)
// 2.添加子資源
AssetDatabase.AddObjectToAsset(B,A);
AssetDatabase.AddObjectToAsset(C,A);
AssetDatabase.AddObjectToAsset(D,A);
// 3.設置主資源
AssetDatabase.SetMainObject(A, assetPath);
// 4.存一下之前的修改
EditorUtility.SetDirty(A); // 標記A爲髒數據
AssetDatabase.SaveAssets(); // 保存
AssetDatabase.Refresh(); // 刷新
// 5.Have a good day.