点击按钮时纹理没有分配给游戏对象
本文关键字:分配 游戏 对象 按钮 纹理 | 更新日期: 2023-09-27 18:04:18
我有件事一直没能解决,我真的需要一个新的人来处理。我正在加载一个图像数组,将其中一个分配给LoadGallery.cs中的纹理。然后在LoadImage中,我有一个按钮当点击时运行LoadImg但是当我点击按钮时什么都没有发生。纹理不会被分配给GameObject。我也没有得到任何错误。当它全部在IEnumerator函数内时,脚本工作得很好,但当我将它拉出到另一个脚本中时,我什么也得不到。我说错了什么?
LoadGallery.cs
public Texture2D tex;
// Use this for initialization
void Start () {
StartCoroutine("LoadAllImages");
}
IEnumerator LoadAllImages()
{
string[] filePaths = Directory.GetFiles(@"/Users/kenmarold/Screenshots/TATUS/", "*.png");
WWW www = new WWW("file://" + filePaths[0]);
yield return www;
Texture2D tex = new Texture2D(512,512);
www.LoadImageIntoTexture(tex);
}
LoadImage.cs
void LoadImg()
{
GameObject galleryLoader = GameObject.FindGameObjectWithTag("GalleryLoader");
LoadGallery loadGallery = galleryLoader.GetComponent<LoadGallery>();
Rect rct = new Rect(0, 0, loadGallery.tex.width, loadGallery.tex.height);
Vector2 pvt = new Vector2(0.5f, 0.5f);
GameObject screenShotImg = GameObject.FindGameObjectWithTag("screenshot");
Image img = screenShotImg.GetComponent<Image>();
img.sprite = Sprite.Create(loadGallery.tex, rct, pvt);
}
我看不出你在做什么。从我的经验来看,这些是常见的错误:
1. 您可能忘记为按钮分配loadmg函数。
2. UI对象"截图"的大小太小试着分配一些虚拟图像,看看它是否真的显示了一些东西。
3.加载画廊时可能会有一些例外。试着查看www.error。仔细调试
祝你工作顺利