public static SavedBrushes GenerateSavedBrushesAsset()
        {
            SavedBrushes asset      = ScriptableObject.CreateInstance <SavedBrushes>();
            var          uniquePath = AssetDatabase.GenerateUniqueAssetPath(PathToToolRoot + "ObjectPainter_SavedBrushes.asset");

            AssetDatabase.CreateAsset(asset, uniquePath);
            AssetDatabase.SaveAssets();
            AssetDatabase.Refresh();

            return(AssetDatabase.LoadAssetAtPath(uniquePath, typeof(SavedBrushes)) as SavedBrushes);
        }
        public static SavedBrushes LoadSavedBrushes()
        {
            string[] guids = AssetDatabase.FindAssets(string.Format("t:{0}", typeof(SavedBrushes).ToString().Replace("UnityEngine.", string.Empty)));

            for (int i = 0; i < guids.Length; i++)
            {
                string       assetPath = AssetDatabase.GUIDToAssetPath(guids[i]);
                SavedBrushes asset     = AssetDatabase.LoadAssetAtPath <SavedBrushes>(assetPath);
                if (asset != null)
                {
                    return(asset);
                }
            }
            return(GenerateSavedBrushesAsset());
        }