关闭

Unity 设置指定的版本目录下所有文件的AssetName

5555人阅读 评论(0) 收藏 举报
分类:
    Unity 5 增加了 Asset Labels,方便地制作 AssetBundles,可以参照文档 《BuildingAssetBundles in 5.x》。

以下代码为设置指定的版本目录下所有文件的AssetName:

 C# Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    /// <summary>
    /// 设置指定的版本目录下所有文件的AssetName
    /// </summary>
    /// <param name="versionDir"></param>
    public static void SetVersionDirAssetName(string versionDir)
    {
        var fullPath = Application.dataPath + "/" + versionDir + "/";
        var relativeLen = versionDir.Length + 8// Assets 长度
        if (Directory.Exists(fullPath))
        {
            EditorUtility.DisplayProgressBar("设置AssetName名称""正在设置AssetName名称中...", 0f);
            var dir = new DirectoryInfo(fullPath);
            var files = dir.GetFiles("*", SearchOption.AllDirectories);
            for (var i = 0; i < files.Length; ++i)
            {
                var fileInfo = files[i];
                EditorUtility.DisplayProgressBar("设置AssetName名称""正在设置AssetName名称中...", 1f * i / files.Length);
                if (!fileInfo.Name.EndsWith(".meta"))
                {
                    var basePath = fileInfo.FullName.Substring(fullPath.Length - relativeLen).Replace('\\''/');
                    var importer = AssetImporter.GetAtPath(basePath);
                    if (importer && importer.assetBundleName != versionDir)
                    {
                        importer.assetBundleName = versionDir;
                    }
                }
            }
            EditorUtility.ClearProgressBar();
        }
    }

版本目录放在 Assets 根目录下,设置结果如下:


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3432951次
    • 积分:35457
    • 等级:
    • 排名:第137名
    • 原创:399篇
    • 转载:88篇
    • 译文:5篇
    • 评论:3417条
    个人说明
    联系方式:
    文章存档
    最新评论