我有一个产生气球,每秒产生一次气球。我想阻止这些气球与其他气球碰撞。我可以看到如何从父对象循环子对象,但我不知道如何遍历共享同一父对象的其他子对象。所有气球都在同一父母中产生。
目前我有这个,但它显然不起作用。我也试过transform.parent.transform
,但这也没有用。它只生成一个气球,并且脚本断开"对象未设置为对象的实例"在同一条线上。
var NewBalloon = Instantiate(balloons[0], transform.position, Quaternion.Euler(new Vector3(-90, 0, 0)));
NewBalloon.transform.parent = GameObject.Find("Balloons").transform;
foreach(Transform child in transform.parent)
{
Physics.IgnoreCollision(NewBalloon.GetComponent<Collider>(), child.GetComponent<Collider>());
}
答案 0 :(得分:4)
不是我打算这样做的方式,但我发现如果你去"Edit" > "Project Settings" > "Physics"
(在5.5版本上),我可以禁用气球/气球的复选框,以阻止它们相互碰撞。
编辑:这似乎是最好的方法。不需要为它添加脚本,它只是完美无缺。