Beispiel #1
0
    public static void BuildAllArtsFileList()
    {
        s_AllArtsFiles.Clear();

        DateTime dt1 = System.DateTime.UtcNow;

        DisposeSceneRes();

        DateTime dt2 = System.DateTime.UtcNow;

        DisposeResourceFolder();

        DateTime            dt3      = System.DateTime.UtcNow;
        ArtResourceFileList filelist = BuildMD5();

        DateTime dt4 = System.DateTime.UtcNow;

        BuildCommon.WriteJsonToFile("Assets", "ArtsFileList.txt", filelist, true);

        DateTime dt5 = System.DateTime.UtcNow;

        string info = string.Format("MD5计算完成\n总共{0}个文件\n耗时:{1}分钟\n其中:\n"
                                    , s_AllArtsFiles.Count, (dt5 - dt1).TotalMinutes.ToString("f1"));

        info = string.Format("{0}分析场景资源耗时:{1}秒\n", info, (dt2 - dt1).TotalSeconds.ToString("f1"));
        info = string.Format("{0}分析Resource资源耗时:{1}秒\n", info, (dt3 - dt2).TotalSeconds.ToString("f1"));
        info = string.Format("{0}生成MD5耗时:{1}秒\n", info, (dt4 - dt3).TotalSeconds.ToString("f1"));
        info = string.Format("{0}保存MD5文件耗时:{1}秒\n", info, (dt5 - dt4).TotalSeconds.ToString("f1"));

        EditorUtility.DisplayDialog("计算完成", info, "好的");
    }
Beispiel #2
0
    public static string GetMD5FromFile(string path)
    {
        if (string.IsNullOrEmpty(path))
        {
            return("");
        }

        if (s_FileList == null)
        {
            s_FileList = BuildCommon.ReadJsonFromFile <ArtResourceFileList>("Assets/" + "ArtsFileList.txt");
        }

        if (s_FileList == null)
        {
            return("");
        }

        return(s_FileList.GetMD5(path));
    }
Beispiel #3
0
    static ArtResourceFileList BuildMD5()
    {
        ArtResourceFileList filelist = new ArtResourceFileList();

        filelist.m_BuildTime = System.DateTime.Now.ToString();

        for (int i = 0; i < s_AllArtsFiles.Count; i++)
        {
            string path = s_AllArtsFiles[i];
            string md5  = GetUnityFileMD5(path);
            //ArtResourceInfo info = new ArtResourceInfo();
            //info.mFilePath = path;
            //info.mFileMD5 = md5;

            filelist.m_ResourceInfoList.Add(path, md5);

            PackAssetBundleUtlis.ShowProgress(i, s_AllArtsFiles.Count, "计算MD5:", path);
        }
        EditorUtility.ClearProgressBar();

        return(filelist);
    }