c# - Why does Resources.Load return null

c# – Why does Resources.Load return null?

c# – Why does Resources.Load return null?

Resources.Load will search for a directory in Assets/Resources.

If you want to put it to Sprites directory then put it inside Resources (ex. Assets/Resources/Sprites).

Then you can just load it like this:

Sprite myFruit = Resources.Load <Sprite> (Sprites/Graphics_3);

Also make sure that youve set your image type to Sprite in the inspector.

If you want to load multiple sprites, use this:

Sprite[] myFruit = Resources.LoadAll <Sprite> (Sprites/Graphics_3);  

See this for more details.

Place awesome.png in Assets/Resources/ (you can have subfolders), and use:

GetComponent<SpriteRenderer>().sprite = 
    Resources.Load<Sprite>(awesome);  // No file extension.

http://docs.unity3d.com/ScriptReference/Resources.html

Theres also LoadAll that Loads all assets in a folder or file at path in a Resources folder.

c# – Why does Resources.Load return null?

I know this is an old post but, if it still does not work by just loading the resources, then we have to add the texture as well. I did it in this way.

Texture2D texture = Resources.Load<Texture2D>(Sprites/imageName);
Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.zero);
btnImage.image.sprite = sprite;

Related posts on C++  :

Leave a Reply

Your email address will not be published.