[Unity編輯器]AssetDatabase.AddObjectToAsset層次亂序的問題

[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.

4.其他

點擊前往官方文檔,搜索’SetMainObject’

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章