Unity3d Unity 2D-通过脚本更改精灵不';行不通

Unity3d Unity 2D-通过脚本更改精灵不';行不通,unity3d,sprite,Unity3d,Sprite,我有多个图像,然后将它们放入“精灵[]精灵”。 我创建了一个GameObjectPrefable并添加了Rigidbody2d+Box Colider 2d+SpriteRender。 我想实例化的GameObjectPrefables的数量等于其他精灵的数量。 但是它不起作用,请教我这个问题。精灵不会改变: public Sprite[] sprites; public GameObject diamondPrefab; void Start() { CreateDiamondsLis

我有多个图像,然后将它们放入“精灵[]精灵”。 我创建了一个GameObjectPrefable并添加了Rigidbody2d+Box Colider 2d+SpriteRender。 我想实例化的GameObjectPrefables的数量等于其他精灵的数量。 但是它不起作用,请教我这个问题。精灵不会改变:

public Sprite[] sprites;
public GameObject diamondPrefab;
void Start()
{
    CreateDiamondsListSprites();
}
void CreateDiamondsListSprites()
    {
        for (int i = 0; i < sprites.Length; i++)
        {
            var go = diamondPrefab;
            go.GetComponent<SpriteRenderer>().sprite = sprites[i];
            listAllDiamondsFromSpritesList.Add(go);
            // Here is sample : i add to list<gameOject> to use later
            Instantiate(listAllDiamondsFromSpritesList[index],listLocationPoint[index]);
        }
    }
公共精灵[]精灵;
公共游戏对象钻石预制;
void Start()
{
创建DiamondsListSprites();
}
void CreateDiamondsListSprites()
{
for(int i=0;i
实例化后,在实例化的游戏对象上设置精灵

void CreateDiamondsListSprites()
{
    for (int i = 0; i < sprites.Length; i++)
    {
        var go = Instantiate(diamondPrefab,listLocationPoint[index]);
        go.GetComponent<SpriteRenderer>().sprite = sprites[i];
        listAllDiamondsFromSpritesList.Add(go);
    }
}
void CreateDiamondsListSprites()
{
for(int i=0;i
谢谢@slky!现在我明白了原因。我会为我的孩子找到另一条路script@PhanNhựtTrường如果我的答案解决了这个问题,请将其标记为答案=)