unity简单打包和使用AB包

打包:

首先需要先在Editor文件夹下创建脚本并编译代码:

using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using System.IO;

public class bundle
{
    [MenuItem("AssetsBundle/Build AssetBundles")]
    static void BuildAllAssetBundles()//进行打包
    {
        string dir = "AssetBundles";
        //判断该目录是否存在
        if (Directory.Exists(dir) == false)
        {
            Directory.CreateDirectory(dir);
        }
        //参数一为打包到哪个路径,参数二压缩选项  参数三 平台的目标
        BuildPipeline.BuildAssetBundles(dir, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows64);
    }
}

写完代码后保存并返回unity便可以看到如下图所示多出来了一个按钮

然后选择任意资源,将资源的AssetBundle更改

unity简单打包和使用AB包_第1张图片

 更改完成后点击多出来的那个按钮,等待unity加载完成后,根据代码中自己填写的路径,便可以看到已经打包成功了

使用:

代码:

GameObject[] game;

void Start()
    {

        StartCoroutine(ABBaoJiaZai());

    }


    /// 
    /// AB包的加载
    /// 
    private IEnumerator ABBaoJiaZai()
    {
        string path = "AssetBundles/tupian.ab";//AB包的位置
        //异步加载
        AssetBundleCreateRequest request = AssetBundle.LoadFromMemoryAsync(File.ReadAllBytes(path));
        yield return request;
        AssetBundle ab = request.assetBundle;

        //使用里面的资源
        game = ab.LoadAllAssets();

        StopCoroutine(ABBaoJiaZai());
    }

你可能感兴趣的:(unity,c#,游戏引擎)