您的位置:首页 > 移动开发 > Unity3D

unityassetbundle 打包存放百度云加载

2014-12-12 16:42 441 查看
打包assetbundle程序

using UnityEngine;
using System.Collections;
using UnityEditor;

public class AssetBundleTest : Editor
{

    [MenuItem("Custom Editor/WebPlayer")]
    static void WebPlayer()
    {
        Object[] SelectedAsset = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);
        foreach (Object obj in SelectedAsset)
        {
            string targetPath = Application.dataPath + "/Asset/" + obj.name + ".assetbundle";
            if (BuildPipeline.BuildAssetBundle(obj, null, targetPath, BuildAssetBundleOptions.CollectDependencies, BuildTarget.WebPlayer))
            {
                Debug.Log(obj.name + "资源打包成功");
            }
            else
            {
                Debug.Log(obj.name + "资源打包失败");
            }
        }
        //刷新编辑器
        AssetDatabase.Refresh();
    }

    [MenuItem("Custom Editor/Android")]
    static void Android()
    {
        Object[] SelectedAsset = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);
        foreach (Object obj in SelectedAsset)
        {
            string targetPath = Application.dataPath + "/Asset/" + obj.name + ".assetbundle";
            if (BuildPipeline.BuildAssetBundle(obj, null, targetPath, BuildAssetBundleOptions.CollectDependencies, BuildTarget.Android))
            {
                Debug.Log(obj.name + "资源打包成功");
            }
            else
            {
                Debug.Log(obj.name + "资源打包失败");
            }
        }
        //刷新编辑器
        AssetDatabase.Refresh();
    }

   
}
加载程序

using UnityEngine;
using System.Collections;

public class loadModel : MonoBehaviour
{

        public string RUL = null;
        //"file://F:\\1.unity3d";
         WWW www;
        bool isDownLoad = false;
        public GameObject fatherObject;
        void Start()
        {
        StartCoroutine(LoadAssetbundle(RUL));
        }
         IEnumerator LoadAssetbundle(string url) 
         {
         // Start a download of the given URL
        // 开始从指定路径下载
         www = WWW.LoadFromCacheOrDownload(url, 1);
        // Wait for download to complete
        // 等待下载完成
        yield return www;
         if(!www.isDone)
         {
         print("123");
         }
        if (www.error != null)
        {
        Debug.Log (www.error);

        yield return null;
        }
// Instantiate(www.assetBundle.mainAsset);
 GameObject gameObj = GameObject.Instantiate(www.assetBundle.mainAsset, transform.position, Quaternion.identity) as GameObject;
 gameObj.transform.parent = fatherObject.transform;
 }
 void Update() 
 {
 if (!www.isDone)
 {
 isDownLoad = false;
 }
 else
 {
 isDownLoad = true;
 }

 }
 void OnGUI()
 {
 if(!isDownLoad)
 {
 GUI.Label(new Rect(720f / 1627.0f * Screen.width, 300f / 915.0f * Screen.height, 200f / 1627.0f * Screen.width, 50f / 915.0f * Screen.height), "正在下载请等待);
 }

 }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: