예제 #1
0
    void onClickSave()
    {
        string assetPath = "Assets/" + uftAtlas.atlasName;

        if (atlasMetadata == null || (EditorUtility.DisplayDialog("You are editing atlas", "Do you want to overwrite it?", "Yes", "No")))
        {
            // if we have already metadata, that's mean that we want to override object, so just need to take old path
            string texturePath  = assetPath + ".png";
            string metadataPath = assetPath + ".asset";
            if (atlasMetadata != null)
            {
                texturePath  = AssetDatabase.GetAssetPath(atlasMetadata.texture);
                metadataPath = AssetDatabase.GetAssetPath(atlasMetadata);

                atlasMetadata = uftAtlas.saveAtlasTextureAndGetMetadata(texturePath, atlasMetadata);
                EditorUtility.SetDirty(atlasMetadata);
                AssetDatabase.SaveAssets();
            }
            else
            {
                atlasMetadata = uftAtlas.saveAtlasTextureAndGetMetadata(texturePath, null);
                AssetDatabase.CreateAsset(atlasMetadata, metadataPath);
            }
        }
    }
예제 #2
0
    void onClickSave()
    {
        string assetPath = "Assets/" + uftAtlas.atlasName;

        string fullPath          = Application.dataPath + "/" + uftAtlas.atlasName;
        bool   isAnyAssetsExists = (File.Exists(@fullPath + ".asset") || File.Exists(@fullPath + ".png"));


        if (!isAnyAssetsExists || (EditorUtility.DisplayDialog("Some assets with following name " + uftAtlas.atlasName + " already exists", "Do you want to overwrite it?", "Yes", "No")))
        {
            // if we have already metadata, that's mean that we want to override object, so just need to take old path
            string texturePath  = assetPath + ".png";
            string metadataPath = assetPath + ".asset";
            if (atlasMetadata != null)
            {
                Debug.Log("meta!~=null");
                texturePath  = AssetDatabase.GetAssetPath(atlasMetadata.texture);
                metadataPath = AssetDatabase.GetAssetPath(atlasMetadata);
            }

            UFTAtlasMetadata metadata = uftAtlas.saveAtlasTextureAndGetMetadata(texturePath);
            AssetDatabase.CreateAsset(metadata, metadataPath);
            atlasMetadata = metadata;
        }
    }