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

关于采用Unity 5.x 提供的增量式打包单个模型后AssetBundle doesn’t have main asset解决方法

2016-10-27 15:52 567 查看

1.可通过AssetBundle.LoadAllAssetsAsync()后使用AssetBundleRequest.asset 代替原有AssetBundle.mainAsset,代码如下

public class ExmpDownloadAssetBundleForNew : MonoBehaviour
{
IEnumerator Start ()
{
string url = "http://.........";
WWW www = new WWW(url);
yield return www;
if (www.isDone && string.IsNullOrEmpty(www.error))
{
AssetBundle ab = www.assetBundle;
if (ab)
{
AssetBundleRequest abr =  ab.LoadAllAssetsAsync<GameObject>();
yield return abr;

if (abr != null)
{
CallBack(url, abr.asset);
}
}

if (www.assetBundle) www.assetBundle.Unload(false);
www.Dispose();
}
}

public void CallBack(string url, UnityEngine.Object ob)
{
///相关处理操作
}
}


2.可通过AssetBundle.LoadAllAssets()[0],因为就打包一个模型,所以加载所有的Assets,取第0个就是它自己了。相关代码,参考1即可。

以上2种使用,希望能帮助一些有疑问的朋友,如有问题请不吝指正!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity
相关文章推荐