- Home /
Changing a UI image sprite in scripts results in a black texture
Hi, I'm having an odd issue when I try to replace the sprite of a UI Image that is a child of a Canvas element.
I have a GUI image that is stretched over the entire screen of the android device running a vuforia unity app. When I first set the GUI image sprite, it loads in fine, but the second time I replace the image sprite, I get a black screen since the texture doesn't seem to want to load.
I don't think it's the fault of the actual images, since when I swap the order of the images the sprite is set as, both load fine when they're loaded first.
I've tried a bunch of the solutions already on the web including: -Using etc texture compression on my images -Setting the max texture size to 2048 (although my images are around 500x500 at most) -Disabling mip maps
I'm honestly completely stuck. Any help is greatly appreciated!
Example Code:
if (counter == 0) {
image.sprite = Resources.Load (test1, typeof(Sprite)) as Sprite;
} else {
image.sprite = Resources.Load (test2, typeof(Sprite)) as Sprite;
//this is where I get the black texture
}
counter ++;
Debug.Log ("nameofsprite:" + image.sprite.name);
Debug.Log ("textureofsprite:" + image.sprite.texture.name);