Unity获取网络图片

2023-09-25  本文已影响0人  全新的饭
    private void UrlToSprite(string url, Action<Sprite> callback)
    {
        StartCoroutine(UrlToSpriteCoroutine(url, callback));
    }
    private IEnumerator UrlToSpriteCoroutine(string url, Action<Sprite> callback)
    {
        using (UnityEngine.Networking.UnityWebRequest request = UnityEngine.Networking.UnityWebRequestTexture.GetTexture(url))
        {
            yield return request.SendWebRequest();
            if (request.result == UnityEngine.Networking.UnityWebRequest.Result.Success)
            {
                Texture2D texture = UnityEngine.Networking.DownloadHandlerTexture.GetContent(request);
                Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.zero);
                callback(sprite);
            }
            else
            {
                Debug.Log("获取图片失败:" + request.result);
            }
        }
    }
上一篇 下一篇

猜你喜欢

热点阅读