首页 文章

Unity中的GameObject []

提问于
浏览
0
for (int x = 0; x < mapLength; x++)
    {
        var instantiateMap = new Vector3(x * 2, 0, 1);
        GameObject[] cubeObjectClones = Instantiate(cubeObject, instantiateMap, Quaternion.identity) as GameObject;
        cubeObjectClones[x].transform.parent = transform;
    }

无法隐式转换类型 UnityEngine.GameObject' to UnityEngine.GameObject []'

有人可以解释我如何解决这个错误吗?

1 回答

  • 5

    这是因为Instantiate方法返回单个GameObject . 相反,您需要使用循环来生成更多实例并将它们添加到数组中 . 请使用以下代码 .

    GameObject[] cubeObjectClones = new GameObject[mapLength];
    for (int x = 0; x < mapLength; x++)
    {
        var instantiateMap = new Vector3(x * 2, 0, 1);
        cubeObjectClones[x] = Instantiate(cubeObject, instantiateMap, Quaternion.identity) as GameObject;
        cubeObjectClones[x].transform.parent = transform;
    }
    

相关问题