unity加载网络图片

我这个是用的www来加载网上的图片的(里面有一个自己认为的坑:就是网络图片的地址问题,应该复制的是图片的地址,而不是网页的地址,如果复制的是html文件,在转为图片格式就会出现问题。)

private string url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1586752831873&di=f5846e63371c8c96f9497cf5c47b0778&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2F2020-02-08%2F5e3e660906122.jpg";
    //public string url = "http://q1.qlogo.cn/g?b=qq&nk=1075625244&s=640";
    public Text Test;
    WWW www;
    Color Alpha;
    bool Appear = false;
    int a = 0;
    void Awake()
    {
        Test = Test.GetComponent<Text>();
    }

    IEnumerator Start()
    {
        www = new WWW(url);
        //定义www为WWW类型并且等于所下载下来的WWW中内容。
        yield return www;
        //返回所下载的www的值
        GetComponent<MeshRenderer>().material.shader = Shader.Find("Transparent/Diffuse");
        GetComponent<MeshRenderer>().material.mainTexture = www.texture;

        Texture2D newTexture = www.texture;
        byte[] pngData = newTexture.EncodeToPNG();
        try
        {
            if (Application.platform == RuntimePlatform.Android)
            {
                File.WriteAllBytes(Application.persistentDataPath + "/ICO.png", pngData);

            }
            else
            {
                File.WriteAllBytes(Application.dataPath + "/ICO.png", pngData);
            }
        }
        catch (IOException e)
        {
            print(e);
        }

        Alpha = GetComponent<MeshRenderer>().material.color;
        Alpha.a = 1;
        Appear = true;
        GetComponent<MeshRenderer>().enabled = true;
        GetComponent<MeshRenderer>().material.color = Alpha;
        //将下载下来的WWW中的图片赋予到默认物体的材质上进行渲染出来
    }

    void Update()
    {
        Test.text = "DownLoad: " + www.progress;
        if (www.progress == 1 && Appear)
        {
            a++;
            Alpha = GetComponent<MeshRenderer>().material.color;
            Alpha.a += 0.01F;
            GetComponent<MeshRenderer>().material.color = Alpha;
        }
        
    }

复制粘贴就好了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值