Why does Resources.Load <Sprite> return null?
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
There's also LoadAll that "Loads all assets in a folder or file at path in a Resources folder."
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 you've 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.