0

在此处输入图像描述

我一直在搜索如何让这些水果在与篮子发生碰撞时随着篮子运动而移动,我发现如果我想执行此操作,我必须让这些水果成为篮子的孩子游戏对象..例如:

 banana.transform.parent = basket.transform;

香蕉和篮子每个都是“GameObject”类型的......

但不幸的是,这种方式不起作用!我不知道为什么?

所以现在我需要知道如果发生与篮子的碰撞是否有可能破坏香蕉并在运行时在篮子中实例化一个新的香蕉?!

我需要尝试这种愚蠢的方式,因为我已经尝试了所有其他方式,但没有任何效果:(

4

2 回答 2

1

试试这个扩展方法

public static void FindParentAndAttach(this GameObject go, string parentName)
{
    GameObject memberParent = GameObject.Find(parentName);

    if(memberParent.Equals(null))
    {
        memberParent = new GameObject();
        memberParent.name = parentName;
    }

    go.transform.parent = memberParent.transform;

}

然后,您可以通过提供其名称将任何游戏对象附加到父级,如果该名称不存在,它会在根级别创建一个具有该名称的空游戏对象。

gameObject.FindParentAndAttach("Your Parent Name");
于 2013-10-21T18:07:24.287 回答
0

像这样你可以试试

for(int i = 0 ; i < 4 ; i++)
{
    Transform child =Instantiate(cubePrefab,new Vector3(i * 1.2f,0,0),Quaternion.identity) as Transform;
    child.parent = Gobj2.GetComponent <Transform>();
}
于 2013-12-26T09:50:25.347 回答