我如何抓住所有子游戏对象?
有没有办法获得所有子游戏对象? 我正在尝试GameObject.Find
但需要将名称作为string
。
您可以找到所有您的孩子GameObjects,如下所示:
制作一个列表,告诉Unity类型是GameObject。
List list = new List ();
然后使用foreach
循环遍历父GameObject的变换。 请注意,在代码中我们利用了Transform具有gameObject
组件的事实。
foreach(Transform t in transform) list.Add(t.gameObject);
最简单的方法可能是遍历你的gameObject.transform
,它将遍历每个子Transform (你可以从中访问它们的GameObject):
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Example() { foreach (Transform child in transform) { child.gameObject.name = "foo"; // or do something else with child.gameObject } } }
另一种方法是使用GetComponentsInChildren ,但要注意,如果你正在寻找GameObjects ,这也将返回你正在调用它的当前对象。