首先使用命名空间:using UnityEngine.Networking;
public void SetTexture(int _Index)
{
StopCoroutine("LoadTexture");
StartCoroutine("LoadTexture", _Index);
}
IEnumerator LoadTexture(int _Index)
{
using (UnityWebRequest wr = UnityWebRequestTexture.GetTexture("file:///" + LoadPic.instance.path + LoadPic.instance.pathList[_Index]))
{
yield return wr.SendWebRequest();
if (!wr.isNetworkError || !wr.isHttpError)
{
Texture2D t = DownloadHandlerTexture.GetContent(wr);
Sprite s = Sprite.Create(t, new Rect(0, 0, t.width, t.height), Vector2.zero, 1f);
gameObject.GetComponent<Image>().sprite = s;
}
else
{
print(wr.error);
}
}
}
这是加载图片方法
本文介绍了一种在Unity中通过协程动态加载纹理的方法。该方法首先停止任何正在运行的LoadTexture协程,然后启动一个新的协程来加载指定索引的图片。加载完成后,将图片设置为Image组件的Sprite。

2966

被折叠的 条评论
为什么被折叠?



