C# 当build到.exe时,服务器上的Assetbundle可以工作,但不';我不能在WebGL上工作
这是我第一次与WebGL合作, 我试图用AssetBundle将我的3d资源放到服务器上, 这样人们在打开页面时就不必等待太久, 从服务器生成的Assetbundle在生成为.exe时可以工作,但在WebGL上不工作 是的,我已经将BuiltTarget设置为WebGL, 这是我的密码,请帮帮我,我错过了什么C# 当build到.exe时,服务器上的Assetbundle可以工作,但不';我不能在WebGL上工作,c#,unity3d,C#,Unity3d,这是我第一次与WebGL合作, 我试图用AssetBundle将我的3d资源放到服务器上, 这样人们在打开页面时就不必等待太久, 从服务器生成的Assetbundle在生成为.exe时可以工作,但在WebGL上不工作 是的,我已经将BuiltTarget设置为WebGL, 这是我的密码,请帮帮我,我错过了什么 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngi
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class LoadAssetBundle : MonoBehaviour
{
public string url;
public string assetName;
public Vector3 position;
// Start is called before the first frame update
void Start()
{
StartCoroutine(UnityWebReq());
}
IEnumerator UnityWebReq()
{
using (UnityWebRequest uwr = UnityWebRequestAssetBundle.GetAssetBundle(url))
{
yield return uwr.SendWebRequest();
if (uwr.isNetworkError || uwr.isHttpError)
{
Debug.Log(uwr.error);
}
else
{
// Get downloaded asset bundle
AssetBundle bundle = DownloadHandlerAssetBundle.GetContent(uwr);
GameObject obj = (GameObject)bundle.LoadAsset(assetName);
Instantiate(obj, position, Quaternion.identity);
}
}
}
}
不同的目标平台需要不同的资产包!
简言之,针对独立(/Editor)的AssetBundle构建将与其他构建目标平台(如UWP、mobile、WebGL等)不兼容
您必须明确地为相应的目标平台构建资产绑定
正如您所说,在将应用程序构建到.exe
(=独立)时,您的AssetBundles可以工作,这听起来不像是在为WebGL构建AssetBundles
这将有助于了解您是如何构建资产组合的
总的来说,参见 请注意,为独立平台构建的捆绑包与为手机构建的捆绑包不兼容,因此您可能需要生成给定捆绑包的不同版本。有关为不同平台创建资产捆绑包的更多信息,请参阅手册中页面的BuildTarget部分 从上面提到的那一部分 您可以在的脚本API参考中找到可用显式生成目标的列表但是,如果您不想在构建目标中硬编码,请随意利用它,它将自动找到您当前设置为构建的平台,并基于该目标构建资产绑定。
它给出了什么错误?它在我测试时工作得很好,但在我构建时没有加载任何资产。因此,请将它调试到屏幕上,以检查它到达的位置和它执行的操作。感谢您的回答,错误日志是“资产包下载完成,但未收到任何数据”。我已将TargetPlatflorm设置为WebGL,当我检查日志上的错误时,它显示“资产包下载已完成,但尚未收到任何数据”