unity AssetBundle打包及加载

unity版本2017.3.0

1.以下几个api已经弃用

打包只能用:

2.加载大部分用WWW加载

例子:

打包代码:

复制代码
#if UNITY_EDITOR  
using UnityEditor;
using UnityEngine;

public class AssetBundleData: MonoBehaviour
{

    [MenuItem("Assets/buildPrefab")]  //在Assets下面显示一个buildPrefab按钮用来打包
static void AssetBundleGameObject() { string path = Application.dataPath + "/AssetBundle"; BuildPipeline.BuildAssetBundles(path,BuildAssetBundleOptions.None,BuildTarget.StandaloneWindows64); AssetDatabase.Refresh(); //刷新unity中的资源 } } #endif
复制代码

加载:

复制代码
using System.Collections;
using UnityEngine;

public class GameManager : MonoBehaviour {

    IEnumerator InstanceGameObj() //加载游戏物体
    {
        string path =Application.dataPath+ "/AssetBundle/cube.prefab";
        WWW wWW = new WWW(path);
        yield return wWW;
       if(string.IsNullOrEmpty(wWW.error))
        {
            AssetBundle assetBuild =wWW.assetBundle;
            GameObject[] obj = assetBuild.LoadAllAssets<GameObject>();
            Instantiate(obj[0]);
            foreach (GameObject item in obj)
            {
                Debug.Log(item.name);
               // Instantiate(item);
            }
        }
       else
       {
            Debug.Log(wWW.error);
       }
       yield return null;
    }
    IEnumerator InstanceScene()//加载游戏场景
    {
        string path = Application.dataPath + "/AssetBundle/loadscene.scene";
        WWW wWW = new WWW(path);
        yield return wWW;
        if(string.IsNullOrEmpty(wWW.error))
        {
            AssetBundle ab = wWW.assetBundle;  //将场景存入缓存区
            UnityEngine.SceneManagement.SceneManager.LoadScene("Load"); //加载场景
        }
        yield return null;

    }
}
复制代码

 

posted @   游戏鼻祖  阅读(1206)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
点击右上角即可分享
微信分享提示