using System.Collections;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.UI;
public class DownloadPicFromURL : MonoBehaviour
{
public RawImage myImage; // 需要被赋予纹理的UI图像,将场景中的RawImage拖拽赋值给该脚本
private GameObject myPlane; // 需要被赋予纹理的平面
void Start()
{
// 通过Find方法赋值
myPlane = GameObject.Find("Plane");
StartCoroutine(DownloadImage("http://rd7ckb9qt.hn-bkt.clouddn.com/step2.png"));
}
IEnumerator DownloadImage(string MediaUrl)
{
UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl);
yield return request.SendWebRequest();
if (request.result == UnityWebRequest.Result.ProtocolError || request.result == UnityWebRequest.Result.ConnectionError)
Debug.Log(request.error);
else
{
// RawImage赋予纹理
myImage.texture = ((DownloadHandlerTexture)request.downloadHandler).texture;
// 平面赋予纹理
myPlane.GetComponent<Renderer>().material.mainTexture = ((DownloadHandlerTexture)request.downloadHandler).texture;
}
}
}
Unity从URL下载图片,赋值给RawImage和平面Plane
最新推荐文章于 2023-12-02 22:16:28 发布