Unity学习心得之UnityWebRequest

官方文档

https://docs.unity3d.com/ScriptReference/Networking.UnityWebRequest.html

作用:用于与Web服务器通信。简单来说就是可以与服务器上交互(判断、下载东西)

首先注意点1:using UnityEngine.Networking;   引用这个包,属于包内的函数

举例从服务器上加载assetbundle包

    IEnumerator LoadAssetCorotine(string theName, string filePath)
    {
        UnityWebRequest request= UnityWebRequest.GetAssetBundle(@"http://IP地址/" + filePath);
        yield return request.SendWebRequest();
        AssetBundle ab = (request.downloadHandler as DownloadHandlerAssetBundle).assetBundle;
        GameObject gameObject = ab.LoadAsset(theName);
        
    }

1.UnityWebRequest.GetAssetBundle  是获取路径上的assetbundle包 ,其方法参数就是路径(ip+所在路径)

除了GetAssetBundle,还可以是音频、图像、文件(Get那个)

2.这串代码写在协程里主要是因为其从服务器下载assetbundle不是立刻下好的

3.yield return request.SendWebRequest();来发送request请求,得到响应才继续

4.request.downloadHandler就是处理请求的下载和读取的,同时其处理类型不单单只有assetBundle

5.as DownloadHandlerAssetBundle,作为专门下载assetbundle的处理器

6.代码中 ab 就是下载下来的assetbundle了

7.ab.LoadAsset(theName);就是assetbundle方面的读取方式了,这边时读取含某个名字的GameObject

 

你可能感兴趣的:(Unity)