我似乎无法加载精灵运行时。
我有一个主网格对象,在网格上我有一个TerrainDrawer组件。
脚本的代码:
void Start()
{
Sprite[] myFruit = Resources.LoadAll<Sprite>("Sprites/multisprite");
foreach(var sprite in myFruit)
{
print("sprite : " + sprite.name);
}
/*var spritePath = "Sprites/225835_hyptosis_tile-art-batch-1";
//GameObject go = new GameObject();*/
SpriteRenderer renderer = gameObject.AddComponent<SpriteRenderer>();
renderer.sprite = myFruit[0];
//renderer.sprite = Resources.Load(spritePath , typeof(Sprite)) as Sprite;
}
我想要使用的精灵:
当我启动游戏时,我收到此错误:
IndexOutOfRangeException:索引超出了数组的范围。 TerrainDrawer.Start()(在Assets / Scripts / TerrainDrawer.cs:21)
我有一种强烈的感觉,我的问题是通过精灵的路径,但现在重要的是我尝试,我不能让它加载。
有什么建议?
要从代码中的资源加载,必须存在一个名为Resources的文件夹,其中包含该sprite。你基本上加载一个空数组,这就是你得到一个超出范围错误的原因。
Take a look at this page from the docs.
希望这可以帮助!