使用Unity2017打包AssetBundle的简单方法

使用Unity2017打包AssetBundle的简单方法

  • 使用Unity2017打包AssetBundle的简单方法
    • 一、添加打包函数
    • 二、在unity中新建AssetBundle
    • 三、打包AssetBundle
    • 四、打包文件分析
    • 五、参考资料

使用Unity2017打包AssetBundle的简单方法

AssetBundle是unity里的一种资源管理方式,它可以将unity中的资源导出,例如模型、贴图、预制体等。使用AssetBundle可以动态加载资源,便于游戏资源的管理与更新。

一、添加打包函数

将下列脚本放在Editor目录(若没有,则新建一个Editor文件夹)下:

public class AssetBundle {
    [MenuItem("Custom Editor/Build Asset Bundles")]
    static void BuildABs()
    {
        string path = "Assets/StreamingAssets";
        if(Directory.Exists(path)==false)
        {
            //判断文件路径是否存在,若不存在,创建文件
            Directory.CreateDirectory(path);
        }
        BuildPipeline.BuildAssetBundles(path, BuildAssetBundleOptions.None,  BuildTarget.StandaloneWindows);
    }
}

二、在unity中新建AssetBundle

选中一个prefabs,可以在右侧的Inspector面板下侧看到:
使用Unity2017打包AssetBundle的简单方法_第1张图片
点击none,新建一个AssetBundle,可以使用/来添加子目录,例如all/wall,
其中后缀名是自己定义的。
使用Unity2017打包AssetBundle的简单方法_第2张图片

三、打包AssetBundle

在菜单栏上可看到一个Custom Editor目录,点击Build AssetBundle,打包完成。
然后在StreamAsset中可以找到打包的文件,查看其中的manifest文件,可以看到打包出的文件信息。
使用Unity2017打包AssetBundle的简单方法_第3张图片

四、打包文件分析

在我们的打包文件夹中StreamingAssets中有四个文件,如图所示:
使用Unity2017打包AssetBundle的简单方法_第4张图片

all.unity3d是我们打包出的文件。
all.unity3d.manifest是一种文本文件,里面存储的是我们打包到all.unity3d中的资源信息。
StremingAssets与我们命名的文件夹相同,它的mainifest文件中包含的是该文件下所有打包文件的信息(该例子中只有一个打包文件)
文件具体信息如下:
使用Unity2017打包AssetBundle的简单方法_第5张图片
使用Unity2017打包AssetBundle的简单方法_第6张图片

五、参考资料

  1. unity3d脚本编程—陈嘉栋
  2. https://www.cnblogs.com/unity3ds/p/5912729.html
  3. https://docs.unity3d.com/ScriptReference/BuildPipeline.BuildAssetBundles.html
  4. http://www.sikiedu.com/course/74/task/1799/show

你可能感兴趣的:(Unity3D,AssetBundle)