Whenever I try to apply a texture to a 3D spatial material using the albedo property in the GLE2 engine, the texture appears black and I need to restart the engine in order to see it. Sometimes, however, the image itself becomes corrupted, with pixels shaded in that shouldn't be.
I know this is true because I also have a TextureRect in 2D mode showing the same image, and after the restart, it has the same corruption. I also make sure my image isn't filtered, and the sprite I use is also always less than 32x32 pixels. I also checked the image with AseSprite and Paint and re-exported it, but the corruption actually doesn't appear on the actual file, only in the engine. I also made sure that the image is transparent and unshaded in the Spatial Material, and that different file pixel sizes don't affect this. The file type is png.
SOLUTION: Right after you add the png file to the Godot file manager, re-import it as an Image Texture (go to left panel, select Import instead of Scene, go underneath "Import As:", and change it to an image texture.) Then, go to the spatial material's albedo property, and then instead of directly applying your image, create an ImageTexture. Then apply the png file to the image property in the image texture manager.
Attached is the actual png file I was using. (17x24)
https://i.imgur.com/tauNX3A.png