在c#中统一3d中的对象的孩子

时间:2013-02-20 04:39:58

标签: c# object unity3d transform parent-child

我的代码在这里

GameObject mainpumkinclone = (GameObject)Instantiate(pumkin, 
floorPosition + new Vector3(x, y, z), Quaternion.identity);
mainpumkinclone.transform.parent = transform.Find("prickle" + i);

但是mainpumkinclone不会成为特定皮刺的孩子。

请帮助解决此问题。

提前感谢。

2 个答案:

答案 0 :(得分:3)

游戏对象“刺痒”是否在编辑器中命名?我是一个匹配该游戏对象的数字吗?例如,“prickle1”是编辑器场景中的GameObject。如果这两个答案都是肯定的,那就试试吧。

mainpumpkinclone.transform.parent = GameObject.Find("prickle" + i).transform;

答案 1 :(得分:2)

Unity script reference page on Transform可以看出,该类没有函数Find。要按名称查找对象,您需要使用类Find的类函数GameObject,如文档here所示。然后,您将该游戏对象的变换(使用其transform property)指定为其他游戏对象的父变换。具体来说,这样做:

mainpumpkinclone.transform.parent = GameObject.Find("prickle" + i).transform