InvalidCastException: указанное приведение неверно. Ошибка при попытке извлечь изображение из URL. - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь получить текстуру изображения из

IEnumerator GetRequest1(string uri)
{
    using (UnityWebRequest webRequest = UnityWebRequest.Get(uri))
    {
        yield return webRequest.SendWebRequest();
        img = ((DownloadHandlerTexture)webRequest.downloadHandler).texture;      
    }
}

и передать ее в GUI

void OnGUI()
{
    GUILayout.BeginArea(new Rect(100, 50, 500, 500));
    GUILayout.Label(img);
    GUILayout.EndArea();
}

, это должно было сработать в предыдущие дни, сегодня с в некоторых модификациях ошибка при попадании, пробовал это и многое другое, но не смог получить помощь. Было бы здорово, если бы я получил подсказку. спасибо

я использую тот же метод, что и где-то еще, но это прекрасно, здесь его ошибка нажатия как

InvalidCastException: указанное приведение недопустимо. gettiles + d__25.MoveNext () (в Assets / Scripts / gettiles.cs: 111) UnityEngine.SetupCoroutine.InvokeMoveNext (перечислитель System.Collections.IEnumerator, System.IntPtr returnValueAddress) (в C: / buildslave / Runtime / Export / Scripting / Coroutines.cs: 17)

Ошибка InvalidCastException Хит в случае, если фактический тип данных не соответствует типу, который был передан, но здесь это спрайт для спрайта

specificimage.sprite = Sprite.Create (((DownloadHandlerTexture) webRequest.downloadHandler) .texture, новый Rect (0, 0, 250,250) .texture.height), новый вектор2 (0,5f, 0,5 е));

Ответы [ 2 ]

2 голосов
/ 11 февраля 2020

Попробуйте это:

using (UnityWebRequest uwr = UnityWebRequestTexture.GetTexture(uri))
{
       yield return uwr.SendWebRequest();

       if (uwr.isNetworkError || uwr.isHttpError)
       {
           Debug.Log(uwr.error);
       }
       else
       {
           img =  DownloadHandlerTexture.GetContent(uwr);
           specificimage.sprite =Sprite.Create(img, new Rect(0, 0, img.width, img.height), new Vector2(0.5f, 0.5f));
       }
}
0 голосов
/ 11 февраля 2020

Проблема была не с DownloadHandlerTexture проблема заключалась в том, что изображение я получал "TileFusion1" .png вставил, я должен получить TileFusion1.png простой, но раздражающий, HTTP / 1.1 403 Запрещено из-за этого

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...