如何解决通过 unitywebrequest 下载 png 时的 Unity3D Big Memory Spike
在分析器中,设备和编辑器 - 基线移动了 27mb 的差异,但下载的图像大小为 700kb,并被放置到大小为 300x300 和格式为 RGB32 的 RawImage 中。
知道为什么内存会有这么大的变化吗?
这是使用的代码:
public class randomscript : MonoBehavIoUr
{
public RawImage im;
public void OnClick()
{
//SocialPictureCache.LoadImage("https://wallpapercave.com/wp/PPMnOZM.jpg",SocialPictureCache.PictureType.Small,callback);
StartCoroutine(load("https://wallpapercave.com/wp/PPMnOZM.jpg"));
}
public IEnumerator load(string imagePath)
{
using (UnityWebRequest request = new UnityWebRequest(imagePath,UnityWebRequest.kHttpVerbGET))
{
request.downloadHandler = new DownloadHandlerTexture();
yield return request.SendWebRequest();
if (request.isNetworkError || request.isHttpError)
{
Debug.LogError("Error while trying to load image from streaming assets - " + imagePath);
im.gameObject.SetActive(false);
}
else
{
im.texture = DownloadHandlerTexture.GetContent(request);
}
request.dispose();
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。