Example #1
0
    public static void ExportFolders()
    {
        Dictionary <string, Dictionary <string, List <string> > > bundlesToBuild = new Dictionary <string, Dictionary <string, List <string> > >();

        Object[] objs = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);
        foreach (Object objFolder in objs)
        {
            string directoryInAsset = AssetDatabase.GetAssetOrScenePath(objFolder);
            directoryInAsset = directoryInAsset.Replace("Assets", "");
            string directoryName = Application.dataPath + directoryInAsset;
            Debug.Log("dir=" + directoryName);

            if (!Directory.Exists(directoryName))
            {
                continue;
            }

            DirectoryInfo dirInfo           = new DirectoryInfo(directoryName);
            string        bundleNameToBuild = dirInfo.Name;
            if (bundleNameToBuild.IndexOf(".") > 0)
            {
                bundleNameToBuild = bundleNameToBuild.Substring(0, bundleNameToBuild.IndexOf("."));
            }
            if (EditorTools.mIsLowerCaseName)
            {
                bundleNameToBuild = bundleNameToBuild.ToLower();
            }
            bundleNameToBuild = bundleNameToBuild + EditorTools.mFileExtension;
            Dictionary <string, List <string> > directoryToBuild = GetFolderAssetBundles(directoryName);
            bundlesToBuild.Add(bundleNameToBuild, directoryToBuild);
        }
        EditorTools.mBuildType = EditorTools.BuildType.BT_ExportFolders;
        ExportAssetBundles.ExportFileAssetBundles(bundlesToBuild);
    }
Example #2
0
    public static void ExportFiles()
    {
        Dictionary <string, Dictionary <string, List <string> > > bundlesToBuild = new Dictionary <string, Dictionary <string, List <string> > >();

        //Object[] objs = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);
        Object[] objs = Selection.objects;
        foreach (Object objFolder in objs)
        {
            string directoryInAsset = AssetDatabase.GetAssetOrScenePath(objFolder);
            directoryInAsset = directoryInAsset.Replace("Assets", "");
            string directoryName = Application.dataPath + directoryInAsset;
            if (!File.Exists(directoryName))
            {
                continue;
            }

            DirectoryInfo dirInfo           = new DirectoryInfo(directoryName);
            string        bundleNameToBuild = dirInfo.Name;
            if (bundleNameToBuild.IndexOf(".") > 0)
            {
                bundleNameToBuild = bundleNameToBuild.Substring(0, bundleNameToBuild.IndexOf("."));
            }
            if (EditorTools.mIsLowerCaseName)
            {
                bundleNameToBuild = bundleNameToBuild.ToLower();
            }
            bundleNameToBuild = bundleNameToBuild + EditorTools.mFileExtension;

            //GetDependencies(bundleNameToBuild , objFolder);

            string folderNameToBuild = dirInfo.Parent.FullName;
            folderNameToBuild = folderNameToBuild.Replace("\\", "/");

            List <string> assetNamesToBuild = new List <string>();
            assetNamesToBuild.Add(directoryName);

            Dictionary <string, List <string> > directoryToBuild = new Dictionary <string, List <string> >();
            directoryToBuild.Add(folderNameToBuild, assetNamesToBuild);

            bundlesToBuild.Add(bundleNameToBuild, directoryToBuild);
        }
        EditorTools.mBuildType = EditorTools.BuildType.BT_ExportFiles;
        ExportAssetBundles.ExportFileAssetBundles(bundlesToBuild);
    }
Example #3
0
    private static void ExportFolders(Object[] objs)
    {
        Dictionary <string, Dictionary <string, List <string> > > bundlesToBuild = new Dictionary <string, Dictionary <string, List <string> > >();
        Dictionary <string, List <string> > directoryToBuild = new Dictionary <string, List <string> >();
        List <string> assetNamesToBuild = new List <string>();
        int           index             = 0;
        string        bundleNameToBuild = string.Empty;

        foreach (Object objFolder in objs)
        {
            string directoryInAsset = AssetDatabase.GetAssetOrScenePath(objFolder);
            directoryInAsset = directoryInAsset.Replace("Assets", "");
            string directoryName = Application.dataPath + directoryInAsset;
            if (!File.Exists(directoryName))
            {
                continue;
            }
            if (index == 0)
            {
                DirectoryInfo dirInfo = new DirectoryInfo(directoryName);
                bundleNameToBuild = dirInfo.Name;
                if (bundleNameToBuild.IndexOf(".") > 0)
                {
                    bundleNameToBuild = bundleNameToBuild.Substring(0, bundleNameToBuild.IndexOf("."));
                }
                bundleNameToBuild = bundleNameToBuild + "Folders";
                if (EditorTools.mIsLowerCaseName)
                {
                    bundleNameToBuild = bundleNameToBuild.ToLower();
                }
                bundleNameToBuild = bundleNameToBuild + EditorTools.mFileExtension;
            }
            assetNamesToBuild.Add(directoryName);
            index++;
        }
        Debug.Log("bundleNameToBuild : " + bundleNameToBuild);
        directoryToBuild.Add(bundleNameToBuild, assetNamesToBuild);
        bundlesToBuild.Add(bundleNameToBuild, directoryToBuild);

        EditorTools.mBuildType = EditorTools.BuildType.BT_ExportFolders;
        ExportAssetBundles.ExportFileAssetBundles(bundlesToBuild);
    }