在统一中,我使用脚本随机创建攻击玩家的敌人。要做到这一点,我需要插入一个游戏对象,添加SpriteRenderer,命名为,然后给它的纹理这是资产。运行系统中的精灵渲染器中的Unity Change sprite
这里是我的代码:
GameObject sprGameObj = new GameObject();
sprGameObj.AddComponent<SpriteRenderer>();
sprGameObj.name = "Enemy";
sprGameObj.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("EnemyImage");
的代码插入一个游戏对象,增加了精灵渲染器并将其命名为但并不像“EnemyImage”添加到雪碧。我在网上看过,但其他人都在使用类似于我的代码,但这也不起作用。
有谁知道解决方案吗?
我在C#中编码。
更新:
我试图把这个代码已经存在的精灵里面,它只是删除它的形象:
gameObject.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("EnemyImage");
莫不是与图像本身有问题?
好吧,我可能会遇到文件路径问题。我可以尝试使用“assets/EnemyImage”之类的东西吗? – Andrew
感谢您的帮助。我意识到,我认为资产文件夹是“资源”文件夹,并把我的形象放在那里。我认为资源只是意味着资产。为了解决这个问题,我把图像放在一个名为resources的文件夹中。感谢您的帮助。我会尽量不要在下次犯这样的错误。 – Andrew
另一个提示:'Resources.Load <>()'只适用于设置为单个的精灵。如果你有一个设置为多个,你需要使用'Resources.LoadAll <>()'。 –