前言
甲爸爸反馈四张小图和一张大图加载的速度没有变化,和我预测不太一致,做个小测试支持一下我的猜测
一张3.5M的大图和四张800k左右的小图用UnityWebRequestTexture加载速度比较
代码如下(示例):
private IEnumerator loadTexture(string url, Action act = null)
{
Debug.LogError(url + " start :" + Time.realtimeSinceStartup);
System.Uri uri = new System.Uri(url);
UnityWebRequest www = UnityWebRequestTexture.GetTexture(uri, true);
yield return www.SendWebRequest();
if (www.isNetworkError || www.isHttpError)
{
Debug.Log(www.error);
}
else
{
Debug.LogError(url + " end :" + Time.realtimeSinceStartup);
//获取并创建Texture
if (((DownloadHandlerTexture)www.downloadHandler).texture != null)
{
Texture texture = ((DownloadHandlerTexture)www.downloadHandler).texture;
}
}
www?.Dispose();
act?.Invoke();
}
四张切割图的用时:0.244979
一张大图的用时:0.497396
不知道我测试的方式是否准确,上面的方式来看,四张切割图用时是远远小于一个大原图的