Я в Unity загружаю картинку из интернета с помощью C# скрипта。 Иногда всёхорошо, а иногда выдаёт ошибку, мол текстура ещё не загружена。 Вчёмпроблемаянепонимаю,сразнымикартинкамиразнаястабильность。 Причём не от веса зависит.
public IEnumerator LoadImage()
{
_img = _avatar.GetComponent<Image>();
if (_url == "")
{
Debug.Log("пусто");
}
else
{
UnityWebRequest webRequest = UnityWebRequestTexture.GetTexture(_url);
yield return webRequest.SendWebRequest();
if (webRequest.isDone == true)
{
Texture texture = ((DownloadHandlerTexture)webRequest.downloadHandler).texture;
Debug.Log(webRequest.error);
_img.sprite = Sprite.Create((Texture2D)texture, new Rect(0, 0, texture.width, texture.height), Vector2.zero);
}
else
{
Debug.Log(webRequest.error);
}
}
}
А вот текст ошибки:
InvalidOperationException: Texture has not yet finished downloading UnityEngine.Networking.DownloadHandlerTexture.InternalGetTexture () (at <8493ecd1d0614bc382e5fcf3adc16a08>:0) UnityEngine.Networking.DownloadHandlerTexture.get_texture () (at <8493ecd1d0614bc382e5fcf3adc16a08>:0) DataBase+<LoadImage>d__27.MoveNext () (at Assets/Scripts/DataBase.cs:161) UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <ca42919df2b74e53b11002749c8755af>:0)
Ожидал стабильности но пока работает в 40% случаев.