我正在尝试加载资产捆绑表单服务器。
我的资产包位于URL上。现在我在webgl平台的编辑器中玩游戏。
我的负载资产捆绑脚本:
[Obsolete]
IEnumerator Start()
{
while (!Caching.ready)
yield return null;
using (var www = WWW.LoadFromCacheOrDownload("http://dev71.onlinetestingserver.com/assetBundles/cube", 5))
{
yield return www;
if (!string.IsNullOrEmpty(www.error))
{
Debug.Log(www.error);
yield return null;
}
var myLoadedAssetBundle = www.assetBundle;
var asset = myLoadedAssetBundle.mainAsset;
Instantiate(www.assetBundle.LoadAsset("cube"));
}
}
但是它给出了错误:
NullReferenceException:对象引用未设置为对象的实例LoadAssetBundles + d__0.MoveNext()(位于Assets / LoadAssetBundles.cs:76)UnityEngine.SetupCoroutine.InvokeMoveNext(System.Collections.IEnumerator枚举器,System.IntPtr returnValueAddress)(位于C:/buildslave/unity/build/Runtime/Export/Scripting/Coroutines.cs:17)
我只希望在玩游戏时,它可以完美加载资产束。我已经创建了资产捆绑包。
您不检查是否为空。
using (var www = WWW.LoadFromCacheOrDownload("http://dev71.onlinetestingserver.com/assetBundles/cube", 5))
{
yield return www; <--- www MIGHT BE NULL
if (!string.IsNullOrEmpty(www.error))
{
Debug.Log(www.error);
yield return null;
}
var myLoadedAssetBundle = www.assetBundle;
var asset = myLoadedAssetBundle.mainAsset; <--- www.assetBundle MIGHT BE NULL
Instantiate(www.assetBundle.LoadAsset("cube"));
}